diff options
author | Sean Owen <sowen@cloudera.com> | 2015-01-26 14:23:42 -0800 |
---|---|---|
committer | Patrick Wendell <patrick@databricks.com> | 2015-01-26 14:23:56 -0800 |
commit | b378e9a747ab8b13f49b4fc2b6c1df6fa43cc2a2 (patch) | |
tree | 468a2144e50daa9eaa7a0dccb5e87aa168c713f3 /core/src/main/scala | |
parent | ef6fe84dcbfff2d937088ea179889752317896e5 (diff) | |
download | spark-b378e9a747ab8b13f49b4fc2b6c1df6fa43cc2a2.tar.gz spark-b378e9a747ab8b13f49b4fc2b6c1df6fa43cc2a2.tar.bz2 spark-b378e9a747ab8b13f49b4fc2b6c1df6fa43cc2a2.zip |
SPARK-4147 [CORE] Reduce log4j dependency
Defer use of log4j class until it's known that log4j 1.2 is being used. This may avoid dealing with log4j dependencies for callers that reroute slf4j to another logging framework. The only change is to push one half of the check in the original `if` condition inside. This is a trivial change, may or may not actually solve a problem, but I think it's all that makes sense to do for SPARK-4147.
Author: Sean Owen <sowen@cloudera.com>
Closes #4190 from srowen/SPARK-4147 and squashes the following commits:
4e99942 [Sean Owen] Defer use of log4j class until it's known that log4j 1.2 is being used. This may avoid dealing with log4j dependencies for callers that reroute slf4j to another logging framework.
(cherry picked from commit 54e7b456dd56c9e52132154e699abca87563465b)
Signed-off-by: Patrick Wendell <patrick@databricks.com>
Diffstat (limited to 'core/src/main/scala')
-rw-r--r-- | core/src/main/scala/org/apache/spark/Logging.scala | 20 |
1 files changed, 11 insertions, 9 deletions
diff --git a/core/src/main/scala/org/apache/spark/Logging.scala b/core/src/main/scala/org/apache/spark/Logging.scala index d4f2624061..419d093d55 100644 --- a/core/src/main/scala/org/apache/spark/Logging.scala +++ b/core/src/main/scala/org/apache/spark/Logging.scala @@ -118,15 +118,17 @@ trait Logging { // org.slf4j.impl.Log4jLoggerFactory, from the log4j 2.0 binding, currently // org.apache.logging.slf4j.Log4jLoggerFactory val usingLog4j12 = "org.slf4j.impl.Log4jLoggerFactory".equals(binderClass) - val log4j12Initialized = LogManager.getRootLogger.getAllAppenders.hasMoreElements - if (!log4j12Initialized && usingLog4j12) { - val defaultLogProps = "org/apache/spark/log4j-defaults.properties" - Option(Utils.getSparkClassLoader.getResource(defaultLogProps)) match { - case Some(url) => - PropertyConfigurator.configure(url) - System.err.println(s"Using Spark's default log4j profile: $defaultLogProps") - case None => - System.err.println(s"Spark was unable to load $defaultLogProps") + if (usingLog4j12) { + val log4j12Initialized = LogManager.getRootLogger.getAllAppenders.hasMoreElements + if (!log4j12Initialized) { + val defaultLogProps = "org/apache/spark/log4j-defaults.properties" + Option(Utils.getSparkClassLoader.getResource(defaultLogProps)) match { + case Some(url) => + PropertyConfigurator.configure(url) + System.err.println(s"Using Spark's default log4j profile: $defaultLogProps") + case None => + System.err.println(s"Spark was unable to load $defaultLogProps") + } } } Logging.initialized = true |