You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@storm.apache.org by bo...@apache.org on 2018/09/10 17:58:17 UTC

[1/2] storm git commit: [STORM-3198] Topology submitters should be able to supply log4j2 configurations

Repository: storm
Updated Branches:
  refs/heads/master 60634d32a -> 8f9061a1b


[STORM-3198] Topology submitters should be able to supply log4j2 configurations


Project: http://git-wip-us.apache.org/repos/asf/storm/repo
Commit: http://git-wip-us.apache.org/repos/asf/storm/commit/620ccf9c
Tree: http://git-wip-us.apache.org/repos/asf/storm/tree/620ccf9c
Diff: http://git-wip-us.apache.org/repos/asf/storm/diff/620ccf9c

Branch: refs/heads/master
Commit: 620ccf9c1d8d2205182bcd6b595529f5c6a5df8d
Parents: e6ff071
Author: Jacob Tolar <jt...@oath.com>
Authored: Wed Aug 15 14:53:42 2018 -0500
Committer: Jacob Tolar <jt...@oath.com>
Committed: Mon Sep 10 12:28:36 2018 -0500

----------------------------------------------------------------------
 pom.xml                                                 |  2 +-
 storm-client/src/jvm/org/apache/storm/Config.java       | 10 ++++++++++
 .../apache/storm/daemon/supervisor/BasicContainer.java  | 12 +++++++++---
 .../storm/daemon/supervisor/BasicContainerTest.java     | 12 ++++++------
 4 files changed, 26 insertions(+), 10 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/storm/blob/620ccf9c/pom.xml
----------------------------------------------------------------------
diff --git a/pom.xml b/pom.xml
index 299b6e4..82cf63f 100644
--- a/pom.xml
+++ b/pom.xml
@@ -278,7 +278,7 @@
         <netty.version>4.1.25.Final</netty.version>
         <sysout-over-slf4j.version>1.0.2</sysout-over-slf4j.version>
         <log4j-over-slf4j.version>1.6.6</log4j-over-slf4j.version>
-        <log4j.version>2.8.2</log4j.version>
+        <log4j.version>2.11.1</log4j.version>
         <slf4j.version>1.7.21</slf4j.version>
         <metrics.version>3.1.0</metrics.version>
         <clojure.tools.nrepl.version>0.2.3</clojure.tools.nrepl.version>

http://git-wip-us.apache.org/repos/asf/storm/blob/620ccf9c/storm-client/src/jvm/org/apache/storm/Config.java
----------------------------------------------------------------------
diff --git a/storm-client/src/jvm/org/apache/storm/Config.java b/storm-client/src/jvm/org/apache/storm/Config.java
index 074fac5..8561eae 100644
--- a/storm-client/src/jvm/org/apache/storm/Config.java
+++ b/storm-client/src/jvm/org/apache/storm/Config.java
@@ -708,6 +708,16 @@ public class Config extends HashMap<String, Object> {
     @isString(acceptedValues = { "S0", "S1", "S2", "S3" })
     public static final String TOPOLOGY_LOGGING_SENSITIVITY = "topology.logging.sensitivity";
     /**
+     * Log file the user can use to configure Log4j2.
+     * Can be a resource in the jar (specified with classpath:/path/to/resource) or a file.
+     * This configuration is applied in addition to the regular worker log4j2 configuration.
+     * The configs are merged according to the rules here:
+     *   https://logging.apache.org/log4j/2.x/manual/configuration.html#CompositeConfiguration
+     */
+    @isString
+    public static final String TOPOLOGY_LOGGING_CONFIG_FILE = "topology.logging.config";
+
+    /**
      * Sets the priority for a topology
      */
     @isInteger

http://git-wip-us.apache.org/repos/asf/storm/blob/620ccf9c/storm-server/src/main/java/org/apache/storm/daemon/supervisor/BasicContainer.java
----------------------------------------------------------------------
diff --git a/storm-server/src/main/java/org/apache/storm/daemon/supervisor/BasicContainer.java b/storm-server/src/main/java/org/apache/storm/daemon/supervisor/BasicContainer.java
index 9a6e526..2a5e4f2 100644
--- a/storm-server/src/main/java/org/apache/storm/daemon/supervisor/BasicContainer.java
+++ b/storm-server/src/main/java/org/apache/storm/daemon/supervisor/BasicContainer.java
@@ -550,8 +550,7 @@ public class BasicContainer extends Container {
     private List<String> getCommonParams() {
         final String workersArtifacts = ConfigUtils.workerArtifactsRoot(_conf);
         String stormLogDir = ConfigUtils.getLogDir();
-        String log4jConfigurationFile = getWorkerLoggingConfigFile();
-
+        
         List<String> commonParams = new ArrayList<>();
         commonParams.add("-Dlogging.sensitivity=" + OR((String) _topoConf.get(Config.TOPOLOGY_LOGGING_SENSITIVITY), "S3"));
         commonParams.add("-Dlogfile.name=worker.log");
@@ -561,7 +560,6 @@ public class BasicContainer extends Container {
         commonParams.add("-Dworker.id=" + _workerId);
         commonParams.add("-Dworker.port=" + _port);
         commonParams.add("-Dstorm.log.dir=" + stormLogDir);
-        commonParams.add("-Dlog4j.configurationFile=" + log4jConfigurationFile);
         commonParams.add("-DLog4jContextSelector=org.apache.logging.log4j.core.selector.BasicContextSelector");
         commonParams.add("-Dstorm.local.dir=" + _conf.get(Config.STORM_LOCAL_DIR));
         if (memoryLimitMB > 0) {
@@ -626,6 +624,12 @@ public class BasicContainer extends Container {
         List<String> classPathParams = getClassPathParams(stormRoot, topoVersion);
         List<String> commonParams = getCommonParams();
 
+        String log4jConfigurationFile = getWorkerLoggingConfigFile();
+        String workerLog4jConfig = log4jConfigurationFile;
+        if (_topoConf.get(Config.TOPOLOGY_LOGGING_CONFIG_FILE) != null) {
+            workerLog4jConfig = workerLog4jConfig + "," + _topoConf.get(Config.TOPOLOGY_LOGGING_CONFIG_FILE);
+        }
+
         List<String> commandList = new ArrayList<>();
         String logWriter = getWorkerLogWriter(topoVersion);
         if (logWriter != null) {
@@ -634,6 +638,7 @@ public class BasicContainer extends Container {
             commandList.addAll(classPathParams);
             commandList.addAll(substituteChildopts(_topoConf.get(Config.TOPOLOGY_WORKER_LOGWRITER_CHILDOPTS)));
             commandList.addAll(commonParams);
+            commandList.add("-Dlog4j.configurationFile=" + log4jConfigurationFile);
             commandList.add(logWriter); //The LogWriter in turn launches the actual worker.
         }
 
@@ -641,6 +646,7 @@ public class BasicContainer extends Container {
         commandList.add(javaCmd);
         commandList.add("-server");
         commandList.addAll(commonParams);
+        commandList.add("-Dlog4j.configurationFile=" + workerLog4jConfig);
         commandList.addAll(substituteChildopts(_conf.get(Config.WORKER_CHILDOPTS), memOnheap));
         commandList.addAll(substituteChildopts(_topoConf.get(Config.TOPOLOGY_WORKER_CHILDOPTS), memOnheap));
         commandList.addAll(substituteChildopts(Utils.OR(

http://git-wip-us.apache.org/repos/asf/storm/blob/620ccf9c/storm-server/src/test/java/org/apache/storm/daemon/supervisor/BasicContainerTest.java
----------------------------------------------------------------------
diff --git a/storm-server/src/test/java/org/apache/storm/daemon/supervisor/BasicContainerTest.java b/storm-server/src/test/java/org/apache/storm/daemon/supervisor/BasicContainerTest.java
index 01041a3..1094e1c 100644
--- a/storm-server/src/test/java/org/apache/storm/daemon/supervisor/BasicContainerTest.java
+++ b/storm-server/src/test/java/org/apache/storm/daemon/supervisor/BasicContainerTest.java
@@ -350,10 +350,10 @@ public class BasicContainerTest {
                            "-Dworker.id=" + workerId,
                            "-Dworker.port=" + port,
                            "-Dstorm.log.dir=" + stormLogDir,
-                           "-Dlog4j.configurationFile=" + workerConf,
                            "-DLog4jContextSelector=org.apache.logging.log4j.core.selector.BasicContextSelector",
                            "-Dstorm.local.dir=" + stormLocal,
                            "-Dworker.memory_limit_mb=768",
+                           "-Dlog4j.configurationFile=" + workerConf,
                            "org.apache.storm.LogWriter",
                            "java",
                            "-server",
@@ -365,10 +365,10 @@ public class BasicContainerTest {
                            "-Dworker.id=" + workerId,
                            "-Dworker.port=" + port,
                            "-Dstorm.log.dir=" + stormLogDir,
-                           "-Dlog4j.configurationFile=" + workerConf,
                            "-DLog4jContextSelector=org.apache.logging.log4j.core.selector.BasicContextSelector",
                            "-Dstorm.local.dir=" + stormLocal,
                            "-Dworker.memory_limit_mb=768",
+                           "-Dlog4j.configurationFile=" + workerConf,
                            "-Dtesting=true",
                            "-Djava.library.path=JLP",
                            "-Dstorm.conf.file=",
@@ -453,10 +453,10 @@ public class BasicContainerTest {
                            "-Dworker.id=" + workerId,
                            "-Dworker.port=" + port,
                            "-Dstorm.log.dir=" + stormLogDir,
-                           "-Dlog4j.configurationFile=" + workerConf,
                            "-DLog4jContextSelector=org.apache.logging.log4j.core.selector.BasicContextSelector",
                            "-Dstorm.local.dir=" + stormLocal,
                            "-Dworker.memory_limit_mb=768",
+                           "-Dlog4j.configurationFile=" + workerConf,
                            "org.apache.storm.LogWriter",
                            "java",
                            "-server",
@@ -468,10 +468,10 @@ public class BasicContainerTest {
                            "-Dworker.id=" + workerId,
                            "-Dworker.port=" + port,
                            "-Dstorm.log.dir=" + stormLogDir,
-                           "-Dlog4j.configurationFile=" + workerConf,
                            "-DLog4jContextSelector=org.apache.logging.log4j.core.selector.BasicContextSelector",
                            "-Dstorm.local.dir=" + stormLocal,
                            "-Dworker.memory_limit_mb=768",
+                           "-Dlog4j.configurationFile=" + workerConf,
                            "-Dtesting=true",
                            "-Djava.library.path=JLP",
                            "-Dstorm.conf.file=",
@@ -555,10 +555,10 @@ public class BasicContainerTest {
                            "-Dworker.id=" + workerId,
                            "-Dworker.port=" + port,
                            "-Dstorm.log.dir=" + stormLogDir,
-                           "-Dlog4j.configurationFile=" + workerConf,
                            "-DLog4jContextSelector=org.apache.logging.log4j.core.selector.BasicContextSelector",
                            "-Dstorm.local.dir=" + stormLocal,
                            "-Dworker.memory_limit_mb=768",
+                           "-Dlog4j.configurationFile=" + workerConf,
                            "backtype.storm.LogWriter",
                            "java",
                            "-server",
@@ -570,10 +570,10 @@ public class BasicContainerTest {
                            "-Dworker.id=" + workerId,
                            "-Dworker.port=" + port,
                            "-Dstorm.log.dir=" + stormLogDir,
-                           "-Dlog4j.configurationFile=" + workerConf,
                            "-DLog4jContextSelector=org.apache.logging.log4j.core.selector.BasicContextSelector",
                            "-Dstorm.local.dir=" + stormLocal,
                            "-Dworker.memory_limit_mb=768",
+                           "-Dlog4j.configurationFile=" + workerConf,
                            "-Dtesting=true",
                            "-Djava.library.path=JLP",
                            "-Dstorm.conf.file=",


[2/2] storm git commit: Merge branch 'STORM-3198' of https://github.com/jacobtolar/storm into STORM-3198

Posted by bo...@apache.org.
Merge branch 'STORM-3198' of https://github.com/jacobtolar/storm into STORM-3198

STORM-3198: Topology submitters should be able to supply log4j2 conf

This closes #2806


Project: http://git-wip-us.apache.org/repos/asf/storm/repo
Commit: http://git-wip-us.apache.org/repos/asf/storm/commit/8f9061a1
Tree: http://git-wip-us.apache.org/repos/asf/storm/tree/8f9061a1
Diff: http://git-wip-us.apache.org/repos/asf/storm/diff/8f9061a1

Branch: refs/heads/master
Commit: 8f9061a1b7c56499a42bcb406a11287955cfce73
Parents: 60634d3 620ccf9
Author: Robert Evans <ev...@yahoo-inc.com>
Authored: Mon Sep 10 12:36:05 2018 -0500
Committer: Robert Evans <ev...@yahoo-inc.com>
Committed: Mon Sep 10 12:36:05 2018 -0500

----------------------------------------------------------------------
 pom.xml                                                 |  2 +-
 storm-client/src/jvm/org/apache/storm/Config.java       | 10 ++++++++++
 .../apache/storm/daemon/supervisor/BasicContainer.java  | 12 +++++++++---
 .../storm/daemon/supervisor/BasicContainerTest.java     | 12 ++++++------
 4 files changed, 26 insertions(+), 10 deletions(-)
----------------------------------------------------------------------