ho il seguente file logback.xml:Come cambiare livello di registrazione di radice di programmazione
<configuration debug="true">
<appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
<encoder>
<pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</pattern>
</encoder>
</appender>
<root level="debug">
<appender-ref ref="STDOUT" />
</root>
</configuration>
Ora, al verificarsi di un evento specifico, voglio cambiare a livello di codice il livello del logger principale da di debug a errore. Non posso usare la sostituzione variabile, è obbligatorio farlo all'interno del codice.
Come può essere fatto? Grazie.
Va notato che lo scopo della slf4j è quello di astrarre il quadro di registrazione, ma questo primo metodo elimina che facendo riferimento direttamente al quadro di registrazione. –
Se si esegue questa operazione e si ottiene una classe ClassCastException, è molto probabile che vi siano più associazioni SLF4J sul classpath. L'output del registro indicherà questo e quali collegamenti sono presenti per consentire all'utente di determinare quale (i) è necessario (i) da escludere. – icfantv
In risposta al commento di Tim, va anche notato che a volte stai solo facendo lo sviluppo e il registratore sta vomitando cose che non ti interessano e vuoi temporaneamente disattivarlo, quindi in questo caso non è così qualcosa di cui preoccuparsi. –