logbak.xml文件如下:
<?xml version="1.0" encoding="UTF-8"?>
<configuration debug="true" scan="true" scanPeriod="30 seconds">
<appender name="CONSOLE-OUT" class="ch.qos.logback.core.ConsoleAppender">
<!-- encoders are by default assigned the type
ch.qos.logback.classic.encoder.PatternLayoutEncoder -->
<encoder>
<pattern>%d{yyyy-MM-dd HH:mm:ss} [%level] [%thread] - %m%n</pattern>
</encoder>
</appender>
<appender name="STDOUT" class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>${catalina.base}/logs/test/root.log</file>
<!-- encoders are by default assigned the type ch.qos.logback.classic.encoder.PatternLayoutEncoder -->
<encoder>
<pattern>%d{yyyy-MM-dd HH:mm:ss} [%level] [%thread] - %m%n</pattern>
<charset>UTF-8</charset>
</encoder>
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<!-- daily rollover -->
<fileNamePattern>./logs/error.%d{yyyy-MM-dd}.log.zip
</fileNamePattern>
<!-- keep 30 days' worth of history -->
<maxHistory>30</maxHistory>
</rollingPolicy>
</appender>
<!-- 按日期区分的滚动错误日志 -->
<appender name="ERROR-OUT"
class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>${catalina.base}/logs/test/error.log</file>
<encoder>
<pattern>%d{yyyy-MM-dd HH:mm:ss} [%thread] [%class:%line] - %m%n</pattern>
<charset>UTF-8</charset>
</encoder>
<filter class="ch.qos.logback.classic.filter.LevelFilter">
<level>ERROR</level>
<onMatch>ACCEPT</onMatch>
<onMismatch>DENY</onMismatch>
</filter>
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<!-- daily rollover -->
<fileNamePattern>${catalina.base}/logs/test/error.%d{yyyy-MM-dd}.log.zip
</fileNamePattern>
<!-- keep 30 days' worth of history -->
<maxHistory>30</maxHistory>
</rollingPolicy>
</appender>
<!-- 按日期区分的滚动调试日志 -->
<appender name="DEBUG-OUT"
class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>${catalina.base}/logs/test/debug.log</file>
<encoder>
<pattern>%d{yyyy-MM-dd HH:mm:ss} [%thread] [%class:%line] - %m%n</pattern>
<charset>UTF-8</charset>
</encoder>
<filter class="ch.qos.logback.classic.filter.LevelFilter">
<level>DEBUG</level>
<onMatch>ACCEPT</onMatch>
<onMismatch>DENY</onMismatch>
</filter>
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<!-- daily rollover -->
<fileNamePattern>${catalina.base}/logs/test/debug.%d{yyyy-MM-dd}.log.zip
</fileNamePattern>
<!-- keep 30 days' worth of history -->
<maxHistory>30</maxHistory>
</rollingPolicy>
</appender>
<!-- 按日期区分的滚动调试日志 -->
<appender name="INFO-OUT"
class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>${catalina.base}/logs/test/info.log</file>
<encoder>
<pattern>%d{yyyy-MM-dd HH:mm:ss} [%thread] [%class:%line] - %m%n</pattern>
<charset>UTF-8</charset>
</encoder>
<filter class="ch.qos.logback.classic.filter.LevelFilter">
<level>INFO</level>
<onMatch>ACCEPT</onMatch>
<onMismatch>DENY</onMismatch>
</filter>
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<!-- daily rollover -->
<fileNamePattern>${catalina.base}/logs/test/info.%d{yyyy-MM-dd}.log.zip
</fileNamePattern>
<!-- keep 30 days' worth of history -->
<maxHistory>30</maxHistory>
</rollingPolicy>
</appender>
<!-- 按日期区分的滚动调试日志 -->
<appender name="WARN-OUT"
class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>${catalina.base}/logs/test/warn.log</file>
<encoder>
<pattern>%d{yyyy-MM-dd HH:mm:ss} [%thread] [%class:%line] - %m%n</pattern>
<charset>UTF-8</charset>
</encoder>
<filter class="ch.qos.logback.classic.filter.LevelFilter">
<level>WARN</level>
<onMatch>ACCEPT</onMatch>
<onMismatch>DENY</onMismatch>
</filter>
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<!-- daily rollover -->
<fileNamePattern>${catalina.base}/logs/test/warn.%d{yyyy-MM-dd}.log.zip
</fileNamePattern>
<!-- keep 30 days' worth of history -->
<maxHistory>30</maxHistory>
</rollingPolicy>
</appender>
<!-- 项目中的日志打印 -->
<logger name="com.test.center" level="INFO" additivity="false">
<appender-ref ref="DEBUG-OUT" />
<appender-ref ref="INFO-OUT" />
<appender-ref ref="WARN-OUT" />
<appender-ref ref="ERROR-OUT" />
<appender-ref ref="CONSOLE-OUT" />
</logger>
<!-- 打印sql -->
<logger name="com.test.dao"><level value="DEBUG" /></logger>
<root level="INFO">
<appender-ref ref="DEBUG-OUT" />
<appender-ref ref="INFO-OUT" />
<appender-ref ref="WARN-OUT" />
<appender-ref ref="ERROR-OUT" />
<appender-ref ref="CONSOLE-OUT" />
</root>
</configuration>