<?xml version="1.0" encoding="UTF-8"?> <configuration> <appender name="ROOT-APPENDER" class="ch.qos.logback.core.rolling.RollingFileAppender"> <file>/Users/hao/logs/error.log</file> <append>true</append> <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> <FileNamePattern>/Users/hao/logs/error.log.%d{yyyy-MM-dd}</FileNamePattern> <MaxHistory>30</MaxHistory> </rollingPolicy> <encoder> <pattern>%d %p [%t] %c{20} %X{traceId:--} %m%n</pattern> <charset class="java.nio.charset.Charset">UTF-8</charset> </encoder> <!-- 过滤掉低于WARN级别的日志 --> <filter class="ch.qos.logback.classic.filter.ThresholdFilter"> <level>WARN</level> </filter> </appender> <appender name="INFO-APPENDER" class="ch.qos.logback.core.rolling.RollingFileAppender"> <file>/Users/hao/logs/info.log</file> <append>true</append> <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> <FileNamePattern>/Users/hao/logs/info.log.%d{yyyy-MM-dd}</FileNamePattern> <MaxHistory>30</MaxHistory> </rollingPolicy> <encoder> <pattern>%d %p [%t] %c{20} %X{traceId:--} %m%n</pattern> <charset class="java.nio.charset.Charset">UTF-8</charset> </encoder> </appender> <!-- 指定工程目录下的log级别,且要求其输出到rootLogger的appender中 --> <logger name="com.vdian.emanage" level="INFO" additivity="true"> <appender-ref ref="INFO-APPENDER"/> </logger> <root level="WARN"> <appender-ref ref="ROOT-APPENDER"/> </root> </configuration>
注意点:
1 appender中filter。参考 http://blog.csdn.net/haidage/article/details/6794540
2 additivity的作用在于 children-logger是否使用 rootLogger配置的appender进行输出