]> nmode's Git Repositories - signal-cli/blobdiff - src/main/java/org/asamk/signal/logging/LogConfigurator.java
Improve log level
[signal-cli] / src / main / java / org / asamk / signal / logging / LogConfigurator.java
index dc4d36488e44daf4e64a90bae1894c0d17c756c4..825495df4d9f04d96280a1f7613462735907309e 100644 (file)
@@ -6,6 +6,7 @@ import ch.qos.logback.classic.Level;
 import ch.qos.logback.classic.Logger;
 import ch.qos.logback.classic.LoggerContext;
 import ch.qos.logback.classic.PatternLayout;
+import ch.qos.logback.classic.jul.LevelChangePropagator;
 import ch.qos.logback.classic.spi.Configurator;
 import ch.qos.logback.classic.spi.ILoggingEvent;
 import ch.qos.logback.core.ConsoleAppender;
@@ -36,9 +37,12 @@ public class LogConfigurator extends ContextAwareBase implements Configurator {
 
     @Override
     public ExecutionStatus configure(LoggerContext lc) {
+        lc.addListener(new LevelChangePropagator() {{
+            setContext(lc);
+        }});
         final var rootLogger = lc.getLogger(Logger.ROOT_LOGGER_NAME);
 
-        final var defaultLevel = verboseLevel > 1 ? Level.ALL : verboseLevel > 0 ? Level.INFO : Level.WARN;
+        final var defaultLevel = verboseLevel > 2 ? Level.ALL : verboseLevel > 0 ? Level.INFO : Level.WARN;
         rootLogger.setLevel(defaultLevel);
 
         final var consoleLayout = verboseLevel == 0 || logFile != null
@@ -48,6 +52,10 @@ public class LogConfigurator extends ContextAwareBase implements Configurator {
         rootLogger.addAppender(consoleAppender);
 
         lc.getLogger("org.asamk").setLevel(verboseLevel > 1 ? Level.ALL : verboseLevel > 0 ? Level.DEBUG : Level.INFO);
+        lc.getLogger("com.zaxxer.hikari.pool.PoolBase")
+                .setLevel(verboseLevel > 2 ? Level.ALL : verboseLevel > 1 ? Level.INFO : Level.WARN);
+        lc.getLogger("org.sqlite.core.NativeDB")
+                .setLevel(verboseLevel > 3 ? Level.ALL : verboseLevel > 1 ? Level.INFO : Level.WARN);
 
         if (logFile != null) {
             consoleAppender.addFilter(new Filter<>() {