<?xml version="1.0" encoding="UTF-8"?>
|
<configuration scan="true" scanPeriod="60 seconds" debug="false">
|
<!-- 日志根目录-->
|
<property name="LOG_PATH" value="./log"/>
|
<!-- 项目名 -->
|
<property name="PROJECT_NAME" value="progress_track"/>
|
<!-- 定义控制台输出格式颜色 日志文件格式 -->
|
<property name="CONSOLE_LOG_PATTERN" value="%red(%d{yyyy-MM-dd HH:mm:ss}) %green([%thread]) %highlight(%-5level) %boldMagenta(%logger) - %msg%n"/>
|
<property name="FILE_LOG_PATTERN" value="%date [%level] [%thread] %logger{80} [%file : %line] %msg%n"/>
|
<!-- 控制台日志 -->
|
<appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">
|
<encoder>
|
<pattern>${CONSOLE_LOG_PATTERN}</pattern>
|
<charset>UTF-8</charset>
|
</encoder>
|
</appender>
|
<!-- 错误日志 -->
|
<appender name="FILE_ERROR" class="ch.qos.logback.core.rolling.RollingFileAppender">
|
<encoder>
|
<pattern>${FILE_LOG_PATTERN}</pattern>
|
</encoder>
|
<file>${LOG_PATH}/${PROJECT_NAME}_error.log</file>
|
<rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
|
<fileNamePattern>${LOG_PATH}/${PROJECT_NAME}_error.%d{yyyy-MM-dd}[%i].log</fileNamePattern>
|
<maxFileSize>100MB</maxFileSize>
|
<maxHistory>30</maxHistory>
|
</rollingPolicy>
|
<!-- 过滤出ERROR级别的日志 -->
|
<filter class="ch.qos.logback.classic.filter.LevelFilter">
|
<level>ERROR</level>
|
<onMatch>ACCEPT</onMatch>
|
<onMismatch>DENY</onMismatch>
|
</filter>
|
</appender>
|
<!-- 全量日志 -->
|
<appender name="FILE_ALL" class="ch.qos.logback.core.rolling.RollingFileAppender">
|
<encoder>
|
<pattern>${FILE_LOG_PATTERN}</pattern>
|
</encoder>
|
<file>${LOG_PATH}/${PROJECT_NAME}.log</file>
|
<rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
|
<fileNamePattern>${LOG_PATH}/${PROJECT_NAME}.%d{yyyy-MM-dd}[%i].log</fileNamePattern>
|
<maxFileSize>100MB</maxFileSize>
|
<maxHistory>30</maxHistory>
|
</rollingPolicy>
|
</appender>
|
|
<!--去除其他jar包中的日志,只显示项目中自己写的日志-->
|
<logger name="com.jydw" level="DEBUG">
|
<appender-ref ref="CONSOLE" />
|
<appender-ref ref="FILE_ALL" />
|
<appender-ref ref="FILE_ERROR" />
|
</logger>
|
|
|
<include resource="org/springframework/boot/logging/logback/base.xml" />
|
<logger name="org.springframework.web" level="INFO"/>
|
<logger name="org.springboot.sample" level="TRACE" />
|
|
<!-- 开发、测试环境 -->
|
<springProfile name="dev,test">
|
<logger name="org.springframework.web" level="INFO"/>
|
<logger name="org.springboot.sample" level="INFO" />
|
<logger name="com.example" level="DEBUG" />
|
</springProfile>
|
|
<!-- 生产环境 -->
|
<springProfile name="prod">
|
<logger name="org.springframework.web" level="ERROR"/>
|
<logger name="org.springboot.sample" level="ERROR" />
|
<logger name="com.example" level="ERROR" />
|
</springProfile>
|
<!-- 日志总开关 -->
|
<root level="INFO">
|
<appender-ref ref="CONSOLE" />
|
<appender-ref ref="FILE_ALL" />
|
<appender-ref ref="FILE_ERROR" />
|
</root>
|
</configuration>
|