| <?xml version="1.0" encoding="UTF-8"?> | 
| <configuration> | 
|   | 
|     <include resource="org/springframework/boot/logging/logback/defaults.xml"/> | 
|   | 
|     <property name="CONSOLE_LOG_PATTERN" | 
|               value="%date{yyyy-MM-dd HH:mm:ss}|%highlight(%-5level)|%boldYellow(%thread)|%boldGreen(%logger) %msg%n"> | 
|     </property> | 
|   | 
|     <property name="CONSOLE_LOG_PATTERN" | 
|               value="%d{yyyy-MM-dd HH:mm:ss.SSS} %highlight(-%5p) ${PID:-} [%15.15t] %-40.40logger{39} : %m%n"> | 
|     </property> | 
|   | 
|     <!--控制台--> | 
|     <appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender"> | 
|         <encoder> | 
|             <pattern>${CONSOLE_LOG_PATTERN}</pattern> | 
|             <charset>UTF-8</charset> | 
|         </encoder> | 
|     </appender> | 
|   | 
|     <!--info级别--> | 
|     <appender name="INFO_FILE" class="ch.qos.logback.core.rolling.RollingFileAppender"> | 
|         <file>${LOG_PATH}/info.log</file> | 
|         <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> | 
|             <FileNamePattern>${LOG_PATH}/info_%d{yyyy-MM-dd}.%i.log</FileNamePattern> | 
|             <maxHistory>10</maxHistory> | 
|             <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP"> | 
|                 <maxFileSize>10MB</maxFileSize> | 
|             </timeBasedFileNamingAndTriggeringPolicy> | 
|         </rollingPolicy> | 
|         <encoder> | 
|             <pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{35} - %msg %n</pattern> | 
|             <charset>UTF-8</charset> | 
|         </encoder> | 
|     </appender> | 
|   | 
|     <!--error级别--> | 
|     <appender name="ERROR_FILE" class="ch.qos.logback.core.rolling.RollingFileAppender"> | 
|         <filter class="ch.qos.logback.classic.filter.ThresholdFilter"> | 
|             <level>ERROR</level> | 
|         </filter> | 
|         <file>${LOG_PATH}/error.log</file> | 
|         <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> | 
|             <FileNamePattern>${LOG_PATH}/error_%d{yyyy-MM-dd}.%i.log</FileNamePattern> | 
|             <maxHistory>10</maxHistory> | 
|             <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP"> | 
|                 <maxFileSize>10MB</maxFileSize> | 
|             </timeBasedFileNamingAndTriggeringPolicy> | 
|         </rollingPolicy> | 
|         <encoder> | 
|             <pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{35} - %msg %n</pattern> | 
|             <charset>UTF-8</charset> | 
|         </encoder> | 
|     </appender> | 
|   | 
|     <root level="INFO"> | 
|         <appender-ref ref="CONSOLE"/> | 
|         <appender-ref ref="INFO_FILE"/> | 
|         <appender-ref ref="ERROR_FILE"/> | 
|     </root> | 
| </configuration> |