Bagaimana saya bisa mengkonfigurasi Logback untuk mencatat level yang berbeda untuk pencatat ke tujuan yang berbeda?
Misalnya, dengan diberikan konfigurasi Logback berikut, Logback akan merekam INFO
pesan STDOUT
dan ERROR
pesanSTDERR
?
(Perhatikan bahwa contoh ini adalah variasi dari contoh yang logback-examples/src/main/java/chapters/configuration/sample4.xml
ditunjukkan pada Bab 3: Konfigurasi Logback ).
<configuration>
<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>
<appender name="STDERR"
class="ch.qos.logback.core.ConsoleAppender">
<encoder>
<pattern>
%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n
</pattern>
</encoder>
<target>System.err</target>
</appender>
<!-- What is the effective level of "chapters.configuration"? -->
<logger name="chapters.configuration" level="INFO" additivity="false">
<appender-ref ref="STDOUT" />
</logger>
<logger name="chapters.configuration" level="ERROR" additivity="false">
<appender-ref ref="STDERR" />
</logger>
<!-- turn OFF all logging (children can override) -->
<root level="OFF">
<appender-ref ref="STDOUT" />
</root>
</configuration>
levels are ordered as follows: TRACE < DEBUG < INFO < WARN < ERROR.