kangarooDataCenterV3/base-buildpackage/src/main/resources/logback-spring.xml

174 lines
9.3 KiB
XML
Raw Normal View History

<?xml version="1.0" encoding="UTF-8"?>
2024-04-12 11:55:48 +08:00
<!-- 日志级别从低到高分为TRACE < DEBUG < INFO < WARN < ERROR < FATAL如果设置为WARN则低于WARN的信息都不会输出 -->
<!-- scan:当此属性设置为true时配置文件如果发生改变将会被重新加载默认值为true -->
<!-- scanPeriod:设置监测配置文件是否有修改的时间间隔如果没有给出时间单位默认单位是毫秒。当scan为true时此属性生效。默认的时间间隔为1分钟。 -->
<!-- debug:当此属性设置为true时将打印出logback内部日志信息实时查看logback运行状态。默认值为false。 -->
<configuration>
2024-04-12 11:55:48 +08:00
<contextName>logback</contextName>
<!-- 日志级别从低到高分为TRACE < DEBUG < INFO < WARN < ERROR < FATAL如果设置为WARN则低于WARN的信息都不会输出 -->
<!-- 彩色日志(IDE下载插件才可以生效) -->
<!-- 彩色日志依赖的渲染类 -->
<conversionRule conversionWord="clr" converterClass="org.springframework.boot.logging.logback.ColorConverter"/>
<conversionRule conversionWord="wex"
converterClass="org.springframework.boot.logging.logback.WhitespaceThrowableProxyConverter"/>
<conversionRule conversionWord="wEx"
converterClass="org.springframework.boot.logging.logback.ExtendedWhitespaceThrowableProxyConverter"/>
<!-- 彩色日志格式 -->
2024-06-26 10:16:54 +08:00
<property name="CONSOLE_LOG_PATTERN" value="${CONSOLE_LOG_PATTERN:-%clr(%d{yyyy-MM-dd HH:mm:ss.SSS}){faint} %clr(${LOG_LEVEL_PATTERN:-%1p}) %clr(${PID:- }){magenta} %clr(--){faint} %clr([%1.15t]){faint} %clr(%-40.40logger{39}){cyan} %clr(:){faint} %m%n${LOG_EXCEPTION_CONVERSION_WORD:-%wEx}}"/>
<springProperty scope="context" name="logPath" source="logging.file.path" defaultValue="logdir"/>
2024-04-28 10:38:58 +08:00
<springProperty scope="context" name="encodings" source="logging.encodings" defaultValue="UTF-8"/>
<!--定义日志文档的存储地址 勿在 LogBack 的配置中使用相对路径-->
<property name="LOG_HOME" value="${logPath}"/>
2024-04-12 11:55:48 +08:00
<property name="MAX_HISTORY" value="50"/>
2024-04-15 09:03:15 +08:00
<property name="MAX_FILE_SIZE" value="50MB"/>
2024-04-12 11:55:48 +08:00
<!-- 控制台输出 -->
<appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">
2024-06-26 10:16:54 +08:00
<!-- <encoder>-->
<!-- <Pattern>${CONSOLE_LOG_PATTERN}</Pattern>-->
<!-- &lt;!&ndash; 设置字符集 &ndash;&gt;-->
<!-- <charset>${encodings}</charset>-->
<!-- </encoder>-->
<!--这里替换成AspectLogbackEncoder-->
<encoder class="com.yomahub.tlog.core.enhance.logback.AspectLogbackEncoder">
<Pattern>${CONSOLE_LOG_PATTERN}</Pattern>
<!-- 设置字符集 -->
2024-04-28 10:38:58 +08:00
<charset>${encodings}</charset>
</encoder>
</appender>
2024-04-12 11:55:48 +08:00
<!-- INFO级别日志输出到文件 -->
<appender name="INFO_FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
<!-- 添加filter只记录INFO级别以上的日志 -->
<filter class="ch.qos.logback.classic.filter.LevelFilter">
<level>INFO</level>
<onMatch>ACCEPT</onMatch>
<onMismatch>DENY</onMismatch>
</filter>
<rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
<!-- 每个日志文件最大MB -->
<maxFileSize>${MAX_FILE_SIZE}</maxFileSize>
<!-- 日志文件保留天 -->
<maxHistory>${MAX_HISTORY}</maxHistory>
<!-- <fileNamePattern>${LOG_PATH}/%d{yyyy-MM-dd}/info/info_%d{yyyyMMddHH}.%i.log</fileNamePattern>-->
<fileNamePattern>${LOG_PATH}/%d{yyyy-MM-dd}/info/info_%d{yyyyMMdd}.%i.log</fileNamePattern>
<timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
<!-- 日志文件超过最大大小后立即生成新文件 -->
<maxFileSize>${MAX_FILE_SIZE}</maxFileSize>
</timeBasedFileNamingAndTriggeringPolicy>
</rollingPolicy>
2024-06-26 10:16:54 +08:00
<!-- <encoder>-->
<!-- <pattern>%d{yyyy-MM-dd HH:mm:ss} %-5level [%thread] %logger{50} - %msg%n</pattern>-->
<!-- </encoder>-->
<!--这里替换成AspectLogbackEncoder-->
<encoder class="com.yomahub.tlog.core.enhance.logback.AspectLogbackEncoder">
<pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n</pattern>
</encoder>
</appender>
<!-- WARN级别日志-->
<appender name="WARN_FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
<rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
<!-- 每个日志文件最大MB -->
<maxFileSize>${MAX_FILE_SIZE}</maxFileSize>
<!-- 日志文件保留天 -->
<maxHistory>${MAX_HISTORY}</maxHistory>
<fileNamePattern>${LOG_PATH}/%d{yyyy-MM-dd}/warn/warn_%d{yyyyMMdd}.%i.log</fileNamePattern>
<timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
<!-- 日志文件超过最大大小后立即生成新文件 -->
<maxFileSize>${MAX_FILE_SIZE}</maxFileSize>
</timeBasedFileNamingAndTriggeringPolicy>
</rollingPolicy>
<!-- 添加 WARN只记录WARN级别以上的日志 -->
<filter class="ch.qos.logback.classic.filter.LevelFilter">
<level>WARN</level>
<onMatch>ACCEPT</onMatch>
<onMismatch>DENY</onMismatch>
</filter>
2024-06-26 10:16:54 +08:00
<!-- <encoder>-->
<!-- <pattern>%d{yyyy-MM-dd HH:mm:ss} %-5level [%thread] %logger{50} - %msg%n</pattern>-->
<!-- </encoder>-->
<!--这里替换成AspectLogbackEncoder-->
<encoder class="com.yomahub.tlog.core.enhance.logback.AspectLogbackEncoder">
<pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n</pattern>
</encoder>
</appender>
<!-- error级别日志-->
<appender name="ERROR_FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
2024-04-12 11:55:48 +08:00
<rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
<!-- 每个日志文件最大MB -->
<!-- <maxFileSize>${MAX_FILE_SIZE}</maxFileSize>-->
2024-04-12 11:55:48 +08:00
<maxFileSize>${MAX_FILE_SIZE}</maxFileSize>
<!-- 日志文件保留天 -->
<maxHistory>${MAX_HISTORY}</maxHistory>
<fileNamePattern>${LOG_PATH}/%d{yyyy-MM-dd}/error/error_%d{yyyyMMdd}.%i.log</fileNamePattern>
2024-04-12 11:55:48 +08:00
<timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
<!-- 日志文件超过最大大小后立即生成新文件 -->
<maxFileSize>${MAX_FILE_SIZE}</maxFileSize>
</timeBasedFileNamingAndTriggeringPolicy>
</rollingPolicy>
<!-- 添加 ERROR只记录ERROR级别以上的日志 -->
<filter class="ch.qos.logback.classic.filter.LevelFilter">
<level>ERROR</level>
<onMatch>ACCEPT</onMatch>
<onMismatch>DENY</onMismatch>
</filter>
2024-06-26 10:16:54 +08:00
<!-- <encoder>-->
<!-- <pattern>%d{yyyy-MM-dd HH:mm:ss} %-5level [%thread] %logger{50} - %msg%n</pattern>-->
<!-- </encoder>-->
<!--这里替换成AspectLogbackEncoder-->
<encoder class="com.yomahub.tlog.core.enhance.logback.AspectLogbackEncoder">
<pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n</pattern>
</encoder>
</appender>
<!-- ALL 任意级别日志都会记录在此级别日志-->
<appender name="ALL_FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
<rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
<!-- 每个日志文件最大MB -->
<!-- <maxFileSize>${MAX_FILE_SIZE}</maxFileSize>-->
<maxFileSize>${MAX_FILE_SIZE}</maxFileSize>
<!-- 日志文件保留天 -->
<maxHistory>${MAX_HISTORY}</maxHistory>
<fileNamePattern>${LOG_PATH}/%d{yyyy-MM-dd}/all/all_%d{yyyyMMdd}.%i.log</fileNamePattern>
<timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
<!-- 日志文件超过最大大小后立即生成新文件 -->
<maxFileSize>${MAX_FILE_SIZE}</maxFileSize>
</timeBasedFileNamingAndTriggeringPolicy>
</rollingPolicy>
2024-06-26 10:16:54 +08:00
<!-- <encoder>-->
<!-- <pattern>%d{yyyy-MM-dd HH:mm:ss} %-5level [%thread] %logger{50} - %msg%n</pattern>-->
<!-- </encoder>-->
<!--这里替换成AspectLogbackEncoder-->
<encoder class="com.yomahub.tlog.core.enhance.logback.AspectLogbackEncoder">
<pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n</pattern>
</encoder>
</appender>
<root level="INFO">
<!-- 控制面板输出 -->
2024-04-12 11:55:48 +08:00
<appender-ref ref="CONSOLE"/>
<!-- 按照每天生成日志文档 -->
2024-04-12 11:55:48 +08:00
<appender-ref ref="INFO_FILE"/>
<appender-ref ref="WARN_FILE"/>
<appender-ref ref="ERROR_FILE"/>
<appender-ref ref="ALL_FILE"/>
</root>
<!-- ERROR 级别-->
<root level="ERROR">
<!-- 按照每天生成日志文档 -->
<appender-ref ref="INFO_FILE"/>
<appender-ref ref="WARN_FILE"/>
<appender-ref ref="ERROR_FILE"/>
<appender-ref ref="ALL_FILE"/>
</root>
</configuration>