You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@sling.apache.org by ch...@apache.org on 2015/07/22 10:57:36 UTC

svn commit: r1692244 - /sling/trunk/bundles/commons/log/src/main/java/org/apache/sling/commons/log/logback/internal/LogConfig.java

Author: chetanm
Date: Wed Jul 22 08:57:35 2015
New Revision: 1692244

URL: http://svn.apache.org/r1692244
Log:
SLING-3421 - logback initialization does not initialize correct loggers if there's a single false one

Incase of any exception with pattern fallback to default pattern

Modified:
    sling/trunk/bundles/commons/log/src/main/java/org/apache/sling/commons/log/logback/internal/LogConfig.java

Modified: sling/trunk/bundles/commons/log/src/main/java/org/apache/sling/commons/log/logback/internal/LogConfig.java
URL: http://svn.apache.org/viewvc/sling/trunk/bundles/commons/log/src/main/java/org/apache/sling/commons/log/logback/internal/LogConfig.java?rev=1692244&r1=1692243&r2=1692244&view=diff
==============================================================================
--- sling/trunk/bundles/commons/log/src/main/java/org/apache/sling/commons/log/logback/internal/LogConfig.java (original)
+++ sling/trunk/bundles/commons/log/src/main/java/org/apache/sling/commons/log/logback/internal/LogConfig.java Wed Jul 22 08:57:35 2015
@@ -27,12 +27,16 @@ import java.util.regex.Pattern;
 import ch.qos.logback.classic.Level;
 import ch.qos.logback.classic.LoggerContext;
 import ch.qos.logback.classic.PatternLayout;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 public class LogConfig {
     private static final String[] LEGACY_MARKERS = {
         "{0}", "{1}", "{2}", "{3}", "{4}", "{5}"
     };
 
+    private static final Logger log = LoggerFactory.getLogger(LogConfig.class);
+
     private final String configPid;
 
     private final Set<String> categories;
@@ -128,8 +132,13 @@ public class LogConfig {
             // Default {0,date,dd.MM.yyyy HH:mm:ss.SSS} *{4}* [{2}] {3} {5}
             // Convert patterns to %d{dd.MM.yyyy HH:mm:ss.SSS} *%level*
             // [%thread] %logger %msg%n
-            logBackPattern = MessageFormat.format(logBackPattern, "zero", "%marker", "%thread", "%logger", "%level",
-                "%message") + "%n";
+            try {
+                logBackPattern = MessageFormat.format(logBackPattern, "zero", "%marker", "%thread", "%logger", "%level",
+                        "%message") + "%n";
+            } catch (IllegalArgumentException e) {
+                log.warn("Invalid message format provided [{}]. Would use the default pattern",logBackPattern, e);
+                logBackPattern = LogConfigManager.LOG_PATTERN_DEFAULT;
+            }
         }
 
         PatternLayout pl = new PatternLayout();