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 960b848461d..bb2eb9135a7 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,13 @@ public static BrokerController createBrokerController(String[] args) { JoranConfigurator configurator = new JoranConfigurator(); configurator.setContext(lc); lc.reset(); + 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"); if (commandLine.hasOption('p')) { 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 f710cdb4030..e3d47c393d0 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,11 @@ 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() { try { return InetAddress.getLocalHost().getHostName(); @@ -804,4 +809,12 @@ public boolean isAutoDeleteUnusedStats() { public void setAutoDeleteUnusedStats(boolean autoDeleteUnusedStats) { this.autoDeleteUnusedStats = autoDeleteUnusedStats; } + + public boolean isIsolateLogEnable() { + return isolateLogEnable; + } + + public void setIsolateLogEnable(boolean isolateLogEnable) { + this.isolateLogEnable = isolateLogEnable; + } } diff --git a/distribution/conf/logback_broker.xml b/distribution/conf/logback_broker.xml index 9d1a6b17618..8113ac9c283 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