<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<!--读取中的配置-->
<property resource=""/>
<!--格式化输出:%d表示日期,[%thread表示线程名],[%-5level:日志级别从左显示5个字符宽度],[%logger{50}:全限定类名的长度为50,%M方法名,%L行号],%msg:日志消息,%n换行-->
<property name="LOG_PATTERN" value="%d{yyyy-MM-dd HH:mm:} [%thread] [%-5level] [%logger{50}#%M.%L] - %msg%n"/>
<!-- appender:指定日志输出目的地,可以是控制台,文件,远程服务器,mysql -->
<appender name="consoleAppender" class="">
<encoder>
<pattern>${LOG_PATTERN}</pattern>
<charset>UTF-8</charset>
</encoder>
<!--过滤器,只会记录info级别以上的日志信息-->
<filter class="">
<level>INFO</level>
</filter>
</appender>
<!-- 按照每天生成日志文件 -->
<appender name="fileAppender" class="">
<rollingPolicy class="">
<!--日志文件输出的文件名-->
<FileNamePattern>${}/%d{yyyy-MM-dd}.%</FileNamePattern>
<!--日志文件大小(压缩前),最大保存数(以日期计数,不算日期后面的编号),总容量-->
<maxFileSize>200KB</maxFileSize>
<maxHistory>10</maxHistory>
<totalSizeCap>5MB</totalSizeCap>
</rollingPolicy>
<encoder>
<pattern>${LOG_PATTERN}</pattern>
<charset>UTF-8</charset>
</encoder>
</appender>
<!--ERROR日志文件单独打印-->
<appender name="errorAppender" class="">
<rollingPolicy class="">
<fileNamePattern>${}/error/%d{yyyy-MM-dd}-error.%</fileNamePattern>
<maxFileSize>200KB</maxFileSize>
<maxHistory>10</maxHistory>
<totalSizeCap>5MB</totalSizeCap>
</rollingPolicy>
<encoder>
<pattern>${LOG_PATTERN}</pattern>
<charset>UTF-8</charset>
</encoder>
<!--过滤器,过滤所有的非ERROR日志-->
<filter class="">
<level>ERROR</level>
<!--如果不是DEBUG日志,直接忽略-->
<onMismatch>DENY</onMismatch>
</filter>
</appender>
<!-- 输出DEBUG以上级别日志 -->
<root level="DEBUG">
<appender-ref ref="consoleAppender" />
<appender-ref ref="fileAppender" />
<appender-ref ref="errorAppender" />
</root>
</configuration>