122 lines
5.1 KiB
XML
122 lines
5.1 KiB
XML
|
||
<?xml version="1.0" encoding="UTF-8"?>
|
||
<!-- 日志级别从低到高分为TRACE < DEBUG < INFO < WARN < ERROR < FATAL -->
|
||
<!-- scan:当此属性设置为true时,配置文件如果发生改变,将会被重新加载,默认值为true -->
|
||
<!-- scanPeriod:设置监测配置文件是否有修改的时间间隔 -->
|
||
<!-- debug:当此属性设置为true时,将打印出logback内部日志信息 -->
|
||
<configuration scan="true" scanPeriod="30 seconds" debug="false">
|
||
|
||
<!-- 定义日志文件存储路径 todo 可以根据情况修改-->
|
||
<property name="LOG_PATH" value="./logs"/>
|
||
<!-- todo application 可以改成应用名称 -->
|
||
<property name="APP_NAME" value="application"/>
|
||
<property name="MAX_HISTORY" value="30"/>
|
||
<property name="MAX_FILE_SIZE" value="100MB"/>
|
||
<property name="TOTAL_SIZE_CAP" value="10GB"/>
|
||
|
||
<!-- 控制台输出 -->
|
||
<appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">
|
||
<encoder>
|
||
<pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level [%logger{50}] - %msg%n</pattern>
|
||
<charset>UTF-8</charset>
|
||
</encoder>
|
||
</appender>
|
||
|
||
<!-- INFO级别日志文件输出 -->
|
||
<appender name="INFO_FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
|
||
<filter class="ch.qos.logback.classic.filter.LevelFilter">
|
||
<level>INFO</level>
|
||
<onMatch>ACCEPT</onMatch>
|
||
<onMismatch>DENY</onMismatch>
|
||
</filter>
|
||
<encoder>
|
||
<pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level [%logger{50}] - %msg%n</pattern>
|
||
<charset>UTF-8</charset>
|
||
</encoder>
|
||
<append>true</append>
|
||
<rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
|
||
<fileNamePattern>${LOG_PATH}/${APP_NAME}-info.%d{yyyy-MM-dd}.%i.log</fileNamePattern>
|
||
<maxFileSize>${MAX_FILE_SIZE}</maxFileSize>
|
||
<maxHistory>${MAX_HISTORY}</maxHistory>
|
||
<totalSizeCap>${TOTAL_SIZE_CAP}</totalSizeCap>
|
||
</rollingPolicy>
|
||
</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>
|
||
<encoder>
|
||
<pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level [%logger{50}] - %msg%n</pattern>
|
||
<charset>UTF-8</charset>
|
||
</encoder>
|
||
<append>true</append>
|
||
<rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
|
||
<fileNamePattern>${LOG_PATH}/${APP_NAME}-error.%d{yyyy-MM-dd}.%i.log</fileNamePattern>
|
||
<maxFileSize>${MAX_FILE_SIZE}</maxFileSize>
|
||
<maxHistory>${MAX_HISTORY}</maxHistory>
|
||
<totalSizeCap>${TOTAL_SIZE_CAP}</totalSizeCap>
|
||
</rollingPolicy>
|
||
</appender>
|
||
|
||
<!-- 业务日志输出 -->
|
||
<appender name="BUSINESS_FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
|
||
<encoder>
|
||
<pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level [%logger{50}] - %msg%n</pattern>
|
||
<charset>UTF-8</charset>
|
||
</encoder>
|
||
<append>true</append>
|
||
<rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
|
||
<fileNamePattern>${LOG_PATH}/${APP_NAME}-business.%d{yyyy-MM-dd}.%i.log</fileNamePattern>
|
||
<maxFileSize>${MAX_FILE_SIZE}</maxFileSize>
|
||
<maxHistory>${MAX_HISTORY}</maxHistory>
|
||
<totalSizeCap>${TOTAL_SIZE_CAP}</totalSizeCap>
|
||
</rollingPolicy>
|
||
</appender>
|
||
|
||
<!-- MyBatis SQL日志输出 -->
|
||
<logger name="org.mybatis" level="DEBUG" additivity="false">
|
||
<appender-ref ref="BUSINESS_FILE"/>
|
||
</logger>
|
||
<logger name="com.baomidou.mybatisplus" level="DEBUG" additivity="false">
|
||
<appender-ref ref="BUSINESS_FILE"/>
|
||
</logger>
|
||
<logger name="java.sql.Connection" level="DEBUG" additivity="false">
|
||
<appender-ref ref="BUSINESS_FILE"/>
|
||
</logger>
|
||
<logger name="java.sql.Statement" level="DEBUG" additivity="false">
|
||
<appender-ref ref="BUSINESS_FILE"/>
|
||
</logger>
|
||
<logger name="java.sql.PreparedStatement" level="DEBUG" additivity="false">
|
||
<appender-ref ref="BUSINESS_FILE"/>
|
||
</logger>
|
||
|
||
<!-- 不同环境的日志配置 -->
|
||
<springProfile name="dev">
|
||
<root level="INFO">
|
||
<appender-ref ref="CONSOLE"/>
|
||
<appender-ref ref="INFO_FILE"/>
|
||
<appender-ref ref="ERROR_FILE"/>
|
||
<appender-ref ref="BUSINESS_FILE"/>
|
||
</root>
|
||
</springProfile>
|
||
|
||
<springProfile name="test">
|
||
<root level="INFO">
|
||
<appender-ref ref="CONSOLE"/>
|
||
<appender-ref ref="INFO_FILE"/>
|
||
<appender-ref ref="ERROR_FILE"/>
|
||
<appender-ref ref="BUSINESS_FILE"/>
|
||
</root>
|
||
</springProfile>
|
||
|
||
<springProfile name="pro">
|
||
<root level="INFO">
|
||
<appender-ref ref="INFO_FILE"/>
|
||
<appender-ref ref="ERROR_FILE"/>
|
||
<appender-ref ref="BUSINESS_FILE"/>
|
||
</root>
|
||
</springProfile>
|
||
|
||
</configuration> |