From e0406b2aa42126cf7ff9067ae7bbd985652dfb82 Mon Sep 17 00:00:00 2001 From: zhangjidi2016 Date: Fri, 23 Jul 2021 14:42:28 +0800 Subject: [PATCH 1/5] [ISSUE #3173]Isolate Broker logs when multiple Broker services are deployed on the same machine --- .../apache/rocketmq/broker/BrokerStartup.java | 1 + distribution/conf/logback_broker.xml | 48 +++++++++---------- 2 files changed, 25 insertions(+), 24 deletions(-) diff --git a/broker/src/main/java/org/apache/rocketmq/broker/BrokerStartup.java b/broker/src/main/java/org/apache/rocketmq/broker/BrokerStartup.java index 960b848461..96e43d1126 100644 --- a/broker/src/main/java/org/apache/rocketmq/broker/BrokerStartup.java +++ b/broker/src/main/java/org/apache/rocketmq/broker/BrokerStartup.java @@ -187,6 +187,7 @@ public class BrokerStartup { JoranConfigurator configurator = new JoranConfigurator(); configurator.setContext(lc); lc.reset(); + System.setProperty("brokerLogDir", brokerConfig.getBrokerName() + "_" + brokerConfig.getBrokerId()); configurator.doConfigure(brokerConfig.getRocketmqHome() + "/conf/logback_broker.xml"); if (commandLine.hasOption('p')) { diff --git a/distribution/conf/logback_broker.xml b/distribution/conf/logback_broker.xml index 9d1a6b1761..8113ac9c28 100644 --- a/distribution/conf/logback_broker.xml +++ b/distribution/conf/logback_broker.xml @@ -19,10 +19,10 @@ - ${user.home}/logs/rocketmqlogs/broker_default.log + ${user.home}/logs/rocketmqlogs/${brokerLogDir}/broker_default.log true - ${user.home}/logs/rocketmqlogs/otherdays/broker_default.%i.log.gz + ${user.home}/logs/rocketmqlogs/otherdays/${brokerLogDir}/broker_default.%i.log.gz 1 10 @@ -37,10 +37,10 @@ - ${user.home}/logs/rocketmqlogs/broker.log + ${user.home}/logs/rocketmqlogs/${brokerLogDir}/broker.log true - ${user.home}/logs/rocketmqlogs/otherdays/broker.%i.log.gz + ${user.home}/logs/rocketmqlogs/otherdays/${brokerLogDir}/broker.%i.log.gz 1 20 @@ -58,10 +58,10 @@ - ${user.home}/logs/rocketmqlogs/protection.log + ${user.home}/logs/rocketmqlogs/${brokerLogDir}/protection.log true - ${user.home}/logs/rocketmqlogs/otherdays/protection.%i.log.gz + ${user.home}/logs/rocketmqlogs/otherdays/${brokerLogDir}/protection.%i.log.gz 1 10 @@ -79,10 +79,10 @@ - ${user.home}/logs/rocketmqlogs/watermark.log + ${user.home}/logs/rocketmqlogs/${brokerLogDir}/watermark.log true - ${user.home}/logs/rocketmqlogs/otherdays/watermark.%i.log.gz + ${user.home}/logs/rocketmqlogs/otherdays/${brokerLogDir}/watermark.%i.log.gz 1 10 @@ -100,10 +100,10 @@ - ${user.home}/logs/rocketmqlogs/store.log + ${user.home}/logs/rocketmqlogs/${brokerLogDir}/store.log true - ${user.home}/logs/rocketmqlogs/otherdays/store.%i.log.gz + ${user.home}/logs/rocketmqlogs/otherdays/${brokerLogDir}/store.%i.log.gz 1 10 @@ -121,10 +121,10 @@ - ${user.home}/logs/rocketmqlogs/remoting.log + ${user.home}/logs/rocketmqlogs/${brokerLogDir}/remoting.log true - ${user.home}/logs/rocketmqlogs/otherdays/remoting.%i.log.gz + ${user.home}/logs/rocketmqlogs/otherdays/${brokerLogDir}/remoting.%i.log.gz 1 10 @@ -142,10 +142,10 @@ - ${user.home}/logs/rocketmqlogs/storeerror.log + ${user.home}/logs/rocketmqlogs/${brokerLogDir}/storeerror.log true - ${user.home}/logs/rocketmqlogs/otherdays/storeerror.%i.log.gz + ${user.home}/logs/rocketmqlogs/otherdays/${brokerLogDir}/storeerror.%i.log.gz 1 10 @@ -164,10 +164,10 @@ - ${user.home}/logs/rocketmqlogs/transaction.log + ${user.home}/logs/rocketmqlogs/${brokerLogDir}/transaction.log true - ${user.home}/logs/rocketmqlogs/otherdays/transaction.%i.log.gz + ${user.home}/logs/rocketmqlogs/otherdays/${brokerLogDir}/transaction.%i.log.gz 1 10 @@ -185,10 +185,10 @@ - ${user.home}/logs/rocketmqlogs/lock.log + ${user.home}/logs/rocketmqlogs/${brokerLogDir}/lock.log true - ${user.home}/logs/rocketmqlogs/otherdays/lock.%i.log.gz + ${user.home}/logs/rocketmqlogs/otherdays/${brokerLogDir}/lock.%i.log.gz 1 5 @@ -206,10 +206,10 @@ - ${user.home}/logs/rocketmqlogs/filter.log + ${user.home}/logs/rocketmqlogs/${brokerLogDir}/filter.log true - ${user.home}/logs/rocketmqlogs/otherdays/filter.%i.log.gz + ${user.home}/logs/rocketmqlogs/otherdays/${brokerLogDir}/filter.%i.log.gz 1 10 @@ -227,10 +227,10 @@ - ${user.home}/logs/rocketmqlogs/stats.log + ${user.home}/logs/rocketmqlogs/${brokerLogDir}/stats.log true - ${user.home}/logs/rocketmqlogs/otherdays/stats.%i.log.gz + ${user.home}/logs/rocketmqlogs/otherdays/${brokerLogDir}/stats.%i.log.gz 1 5 @@ -245,10 +245,10 @@ - ${user.home}/logs/rocketmqlogs/commercial.log + ${user.home}/logs/rocketmqlogs/${brokerLogDir}/commercial.log true - ${user.home}/logs/rocketmqlogs/otherdays/commercial.%i.log.gz + ${user.home}/logs/rocketmqlogs/otherdays/${brokerLogDir}/commercial.%i.log.gz 1 10 From 47175d88c60738157ae57fa5b2fde2563180ca34 Mon Sep 17 00:00:00 2001 From: zhangjidi2016 Date: Sun, 25 Jul 2021 16:52:23 +0800 Subject: [PATCH 2/5] use dLegerSelfId instead of brokerId in dleger mode --- .../main/java/org/apache/rocketmq/broker/BrokerStartup.java | 3 +++ 1 file changed, 3 insertions(+) diff --git a/broker/src/main/java/org/apache/rocketmq/broker/BrokerStartup.java b/broker/src/main/java/org/apache/rocketmq/broker/BrokerStartup.java index 96e43d1126..84243c907b 100644 --- a/broker/src/main/java/org/apache/rocketmq/broker/BrokerStartup.java +++ b/broker/src/main/java/org/apache/rocketmq/broker/BrokerStartup.java @@ -188,6 +188,9 @@ public class BrokerStartup { configurator.setContext(lc); lc.reset(); System.setProperty("brokerLogDir", brokerConfig.getBrokerName() + "_" + brokerConfig.getBrokerId()); + if (messageStoreConfig.isEnableDLegerCommitLog()) { + System.setProperty("brokerLogDir", brokerConfig.getBrokerName() + "_" + messageStoreConfig.getdLegerSelfId()); + } configurator.doConfigure(brokerConfig.getRocketmqHome() + "/conf/logback_broker.xml"); if (commandLine.hasOption('p')) { From 764cfba296f4894a7021a3bd8be222bc1ab59cdf Mon Sep 17 00:00:00 2001 From: zhangjidi2016 Date: Tue, 3 Aug 2021 10:02:03 +0800 Subject: [PATCH 3/5] retrigger ci From fc5180e6b11a2c5abe7f1c181b65dac8eb032352 Mon Sep 17 00:00:00 2001 From: zhangjidi Date: Wed, 15 Sep 2021 16:33:56 +0800 Subject: [PATCH 4/5] isolate broker's log can be configured --- .../java/org/apache/rocketmq/broker/BrokerStartup.java | 7 +++++-- .../java/org/apache/rocketmq/common/BrokerConfig.java | 10 ++++++++++ 2 files changed, 15 insertions(+), 2 deletions(-) diff --git a/broker/src/main/java/org/apache/rocketmq/broker/BrokerStartup.java b/broker/src/main/java/org/apache/rocketmq/broker/BrokerStartup.java index 84243c907b..bb2eb9135a 100644 --- a/broker/src/main/java/org/apache/rocketmq/broker/BrokerStartup.java +++ b/broker/src/main/java/org/apache/rocketmq/broker/BrokerStartup.java @@ -187,8 +187,11 @@ public class BrokerStartup { JoranConfigurator configurator = new JoranConfigurator(); configurator.setContext(lc); lc.reset(); - System.setProperty("brokerLogDir", brokerConfig.getBrokerName() + "_" + brokerConfig.getBrokerId()); - if (messageStoreConfig.isEnableDLegerCommitLog()) { + System.setProperty("brokerLogDir", ""); + if (brokerConfig.isIsolateLogEnable()) { + System.setProperty("brokerLogDir", brokerConfig.getBrokerName() + "_" + brokerConfig.getBrokerId()); + } + if (brokerConfig.isIsolateLogEnable() && messageStoreConfig.isEnableDLegerCommitLog()) { System.setProperty("brokerLogDir", brokerConfig.getBrokerName() + "_" + messageStoreConfig.getdLegerSelfId()); } configurator.doConfigure(brokerConfig.getRocketmqHome() + "/conf/logback_broker.xml"); diff --git a/common/src/main/java/org/apache/rocketmq/common/BrokerConfig.java b/common/src/main/java/org/apache/rocketmq/common/BrokerConfig.java index f710cdb403..a6169d74d1 100644 --- a/common/src/main/java/org/apache/rocketmq/common/BrokerConfig.java +++ b/common/src/main/java/org/apache/rocketmq/common/BrokerConfig.java @@ -187,6 +187,8 @@ public class BrokerConfig { private boolean autoDeleteUnusedStats = false; + private boolean isolateLogEnable = false; + public static String localHostName() { try { return InetAddress.getLocalHost().getHostName(); @@ -804,4 +806,12 @@ public class BrokerConfig { public void setAutoDeleteUnusedStats(boolean autoDeleteUnusedStats) { this.autoDeleteUnusedStats = autoDeleteUnusedStats; } + + public boolean isIsolateLogEnable() { + return isolateLogEnable; + } + + public void setIsolateLogEnable(boolean isolateLogEnable) { + this.isolateLogEnable = isolateLogEnable; + } } From 3738214a355d937441ea3854bc8a80cd5b2b4e3c Mon Sep 17 00:00:00 2001 From: zhangjidi2016 Date: Fri, 7 Jan 2022 01:34:33 +0800 Subject: [PATCH 5/5] add comment --- .../src/main/java/org/apache/rocketmq/common/BrokerConfig.java | 3 +++ 1 file changed, 3 insertions(+) diff --git a/common/src/main/java/org/apache/rocketmq/common/BrokerConfig.java b/common/src/main/java/org/apache/rocketmq/common/BrokerConfig.java index a6169d74d1..e3d47c393d 100644 --- a/common/src/main/java/org/apache/rocketmq/common/BrokerConfig.java +++ b/common/src/main/java/org/apache/rocketmq/common/BrokerConfig.java @@ -187,6 +187,9 @@ public class BrokerConfig { private boolean autoDeleteUnusedStats = false; + /** + * Whether to distinguish log paths when multiple brokers are deployed on the same machine + */ private boolean isolateLogEnable = false; public static String localHostName() {