http://logback.qos.ch/manual/encoders.htmlEncoder
负责将事件对象转换为字节数组.
目前只有PatternLayoutEncoder是唯一有用的Encoder。
LayoutWrappingEncoder
兼容的包装器(因为老版本的logback是跳过Encoder直接依赖Layout的)
PatternLayoutEncoder
针对PatternLayout(最常用的layout)定制的兼容包装器。
immediateFlush属性:是否将日志立刻写入磁盘,默认为true。将这个选项设为false可以达高4到5倍的吞吐量。
<appender name="FILE" class="ch.qos.logback.core.FileAppender">
<file>foo.log</file>
<encoder>
<pattern>%d %-5level [%thread] %logger{0}: %msg%n</pattern>
<!-- this quadruples logging throughput -->
<immediateFlush>false</immediateFlush>
</encoder>
</appender>
outputPatternAsHeader属性:在日志文件的顶部输出一行字符串样式,默认flase。
<appender name="FILE" class="ch.qos.logback.core.FileAppender">
<file>foo.log</file>
<encoder>
<pattern>%d %-5level [%thread] %logger{0}: %msg%n</pattern>
<outputPatternAsHeader>true</outputPatternAsHeader>
</encoder>
</appender>
输出结果:
#logback.classic pattern: %d [%thread] %-5level %logger{36} - %msg%n
2012-04-26 14:54:38,461 [main] DEBUG com.foo.App - Hello world
2012-04-26 14:54:38,461 [main] DEBUG com.foo.App - Hi again