You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@logging.apache.org by gg...@apache.org on 2022/01/24 19:50:03 UTC

[logging-log4j2] 01/02: Fix getting the right logger context.

This is an automated email from the ASF dual-hosted git repository.

ggregory pushed a commit to branch release-2.x
in repository https://gitbox.apache.org/repos/asf/logging-log4j2.git

commit 11f6972c5cbec6abe86b73d5caed091bb3ef4649
Author: Gary Gregory <ga...@gmail.com>
AuthorDate: Mon Jan 24 14:01:16 2022 -0500

    Fix getting the right logger context.
---
 .../logging/log4j/core/config/Configurator.java       | 19 +++++++++++--------
 1 file changed, 11 insertions(+), 8 deletions(-)

diff --git a/log4j-core/src/main/java/org/apache/logging/log4j/core/config/Configurator.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/Configurator.java
index d42d1e3..e165a0d 100644
--- a/log4j-core/src/main/java/org/apache/logging/log4j/core/config/Configurator.java
+++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/Configurator.java
@@ -337,7 +337,7 @@ public final class Configurator {
      * @return the given logger
      */
     public static Logger setLevel(final Logger logger, final Level level) {
-        setLevel(logger.getName(), level);
+        setLevel(LoggerContext.getContext(StackLocatorUtil.getCallerClassLoader(2), false, null), logger.getName(), level);
         return logger;
     }
     
@@ -349,6 +349,14 @@ public final class Configurator {
         return set;
     }
 
+    private static void setLevel(final LoggerContext loggerContext, final String loggerName, final Level level) {
+        if (Strings.isEmpty(loggerName)) {
+            setRootLevel(level, loggerContext);
+        } else if (setLevel(loggerName, level, loggerContext.getConfiguration())) {
+            loggerContext.updateLoggers();
+        }
+    }
+
     /**
      * Sets logger levels.
      *
@@ -379,12 +387,7 @@ public final class Configurator {
      *            the new level
      */
     public static void setLevel(final String loggerName, final Level level) {
-        final LoggerContext loggerContext = LoggerContext.getContext(StackLocatorUtil.getCallerClassLoader(2), false, null);
-        if (Strings.isEmpty(loggerName)) {
-            setRootLevel(level, loggerContext);
-        } else if (setLevel(loggerName, level, loggerContext.getConfiguration())) {
-            loggerContext.updateLoggers();
-        }
+        setLevel(LoggerContext.getContext(StackLocatorUtil.getCallerClassLoader(2), false, null), loggerName, level);
     }
 
     /**
@@ -396,7 +399,7 @@ public final class Configurator {
      *            the new level
      */
     public static void setLevel(final String loggerName, final String level) {
-        setLevel(loggerName, Level.toLevel(level));
+        setLevel(LoggerContext.getContext(StackLocatorUtil.getCallerClassLoader(2), false, null), loggerName, Level.toLevel(level));
     }
 
     private static boolean setLevel(final String loggerName, final Level level, final Configuration config) {