135 lines
7.2 KiB
XML
135 lines
7.2 KiB
XML
|
|
<?xml version="1.0" encoding="UTF-8"?>
|
|||
|
|
<configuration>
|
|||
|
|
<!-- 彩色日志依赖的渲染类 -->
|
|||
|
|
<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" />
|
|||
|
|
|
|||
|
|
<!-- 彩色日志格式 -->
|
|||
|
|
<property name="CONSOLE_LOG_PATTERN" value="${CONSOLE_LOG_PATTERN:-%clr([%X{traceId}] %d{yyyy-MM-dd HH:mm:ss.SSS}){faint} %clr(${LOG_LEVEL_PATTERN:-%5p}) %clr(${PID:- }){magenta} %clr([%15.15t]){faint} %clr(%logger){cyan} %clr(:){faint} %m%n${LOG_EXCEPTION_CONVERSION_WORD:-%wEx}}" />
|
|||
|
|
<!-- 普通日志格式(无颜色) -->
|
|||
|
|
<property name="FILE_LOG_PATTERN" value="[%X{traceId}] %d{yyyy-MM-dd HH:mm:ss.SSS} %5p ${PID:- } [%15.15t] %logger : %m%n${LOG_EXCEPTION_CONVERSION_WORD:-%wEx}" />
|
|||
|
|
|
|||
|
|
<!-- 日志文件存储地址 -->
|
|||
|
|
<property name="LOG_HOME" value="/home/app/flowable/logs" />
|
|||
|
|
|
|||
|
|
<!-- 1. 控制台输出(默认输出DEBUG及以上级别) -->
|
|||
|
|
<appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
|
|||
|
|
<encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
|
|||
|
|
<pattern>${CONSOLE_LOG_PATTERN}</pattern>
|
|||
|
|
</encoder>
|
|||
|
|
</appender>
|
|||
|
|
|
|||
|
|
<!-- 2. INFO级别日志输出到running.log(仅包含INFO及以上,不包含DEBUG) -->
|
|||
|
|
<appender name="INFO_FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
|
|||
|
|
<file>${LOG_HOME}/running.log</file>
|
|||
|
|
<rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
|
|||
|
|
<FileNamePattern>${LOG_HOME}/running.log.%d{yyyy-MM-dd}.%i.log</FileNamePattern>
|
|||
|
|
<MaxHistory>30</MaxHistory>
|
|||
|
|
<TotalSizeCap>500MB</TotalSizeCap>
|
|||
|
|
<maxFileSize>10MB</maxFileSize>
|
|||
|
|
</rollingPolicy>
|
|||
|
|
<encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
|
|||
|
|
<pattern>${FILE_LOG_PATTERN}</pattern>
|
|||
|
|
</encoder>
|
|||
|
|
<!-- 过滤:只接受INFO及以上级别(INFO, WARN, ERROR),排除DEBUG -->
|
|||
|
|
<filter class="ch.qos.logback.classic.filter.ThresholdFilter">
|
|||
|
|
<level>INFO</level>
|
|||
|
|
</filter>
|
|||
|
|
</appender>
|
|||
|
|
|
|||
|
|
<!-- 3. DEBUG级别日志输出到running_debug.log(仅包含DEBUG级别) -->
|
|||
|
|
<appender name="DEBUG_FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
|
|||
|
|
<file>${LOG_HOME}/running_debug.log</file>
|
|||
|
|
<rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
|
|||
|
|
<FileNamePattern>${LOG_HOME}/running_debug.log.%d{yyyy-MM-dd}.%i.log</FileNamePattern>
|
|||
|
|
<MaxHistory>30</MaxHistory>
|
|||
|
|
<TotalSizeCap>500MB</TotalSizeCap>
|
|||
|
|
<maxFileSize>10MB</maxFileSize>
|
|||
|
|
</rollingPolicy>
|
|||
|
|
<encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
|
|||
|
|
<pattern>${FILE_LOG_PATTERN}</pattern>
|
|||
|
|
</encoder>
|
|||
|
|
<!-- 过滤:只接受DEBUG级别 -->
|
|||
|
|
<filter class="ch.qos.logback.classic.filter.LevelFilter">
|
|||
|
|
<level>DEBUG</level>
|
|||
|
|
<onMatch>ACCEPT</onMatch> <!-- 匹配DEBUG级别则接受 -->
|
|||
|
|
<onMismatch>DENY</onMismatch> <!-- 不匹配则拒绝 -->
|
|||
|
|
</filter>
|
|||
|
|
</appender>
|
|||
|
|
|
|||
|
|
<!-- 4. core.log 专用输出器(保留 callerInfo 格式) -->
|
|||
|
|
<appender name="CORE_FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
|
|||
|
|
<file>${LOG_HOME}/core.log</file>
|
|||
|
|
<rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
|
|||
|
|
<FileNamePattern>${LOG_HOME}/core.log.%d{yyyy-MM-dd}.%i.log</FileNamePattern>
|
|||
|
|
<MaxHistory>30</MaxHistory>
|
|||
|
|
<TotalSizeCap>500MB</TotalSizeCap>
|
|||
|
|
<maxFileSize>10MB</maxFileSize>
|
|||
|
|
</rollingPolicy>
|
|||
|
|
<encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
|
|||
|
|
<!-- 仅 core.log 显示真实调用位置(类名.方法名(行号)) -->
|
|||
|
|
<pattern>[%X{traceId}] %d{yyyy-MM-dd HH:mm:ss.SSS} %5p ${PID:- } [%15.15t] %X{callerInfo} : %m%n${LOG_EXCEPTION_CONVERSION_WORD:-%wEx}</pattern>
|
|||
|
|
</encoder>
|
|||
|
|
<filter class="ch.qos.logback.classic.filter.ThresholdFilter">
|
|||
|
|
<level>INFO</level>
|
|||
|
|
</filter>
|
|||
|
|
</appender>
|
|||
|
|
|
|||
|
|
<!-- 全局日志级别设置为DEBUG(确保DEBUG日志能被捕获) -->
|
|||
|
|
<root level="INFO">
|
|||
|
|
<appender-ref ref="STDOUT" /> <!-- 控制台输出DEBUG及以上 -->
|
|||
|
|
<appender-ref ref="INFO_FILE" /> <!-- INFO及以上输出到running.log -->
|
|||
|
|
<appender-ref ref="DEBUG_FILE" /> <!-- 仅DEBUG输出到running_debug.log -->
|
|||
|
|
</root>
|
|||
|
|
|
|||
|
|
|
|||
|
|
<!-- 绑定 FeignClient → 输出到日志文件 -->
|
|||
|
|
<logger name="FeignClient" level="INFO" additivity="false">
|
|||
|
|
<appender-ref ref="INFO_FILE" />
|
|||
|
|
<appender-ref ref="STDOUT" />
|
|||
|
|
</logger>
|
|||
|
|
|
|||
|
|
<!-- 绑定 coreLogger → 输出到 core.log + 控制台 -->
|
|||
|
|
<logger name="coreLogger" level="INFO" additivity="false">
|
|||
|
|
<appender-ref ref="CORE_FILE" /> <!-- 核心日志写入 core.log -->
|
|||
|
|
<appender-ref ref="STDOUT" /> <!-- 同时输出到控制台(显示 CoreLogger) -->
|
|||
|
|
</logger>
|
|||
|
|
|
|||
|
|
<!-- MyBatis SQL语句输出配置 -->
|
|||
|
|
<logger name="org.apache.ibatis" level="DEBUG"/>
|
|||
|
|
<logger name="org.apache.ibatis.session.AutoMappingUnknownColumnBehavior" level="ERROR"/>
|
|||
|
|
|
|||
|
|
<!-- MyBatis SQL语句详细输出 -->
|
|||
|
|
<logger name="org.apache.ibatis.logging" level="DEBUG"/>
|
|||
|
|
<logger name="org.apache.ibatis.logging.jdbc" level="DEBUG"/>
|
|||
|
|
<logger name="org.apache.ibatis.logging.jdbc.BaseJdbcLogger" level="DEBUG"/>
|
|||
|
|
<logger name="org.apache.ibatis.datasource" level="DEBUG"/>
|
|||
|
|
<logger name="org.apache.ibatis.transaction" level="DEBUG"/>
|
|||
|
|
<logger name="org.apache.ibatis.cache" level="DEBUG"/>
|
|||
|
|
|
|||
|
|
<logger name="org.mybatis" level="DEBUG"/>
|
|||
|
|
<logger name="org.mybatis.spring" level="DEBUG"/>
|
|||
|
|
<logger name="org.mybatis.spring.SqlSessionUtils" level="DEBUG"/>
|
|||
|
|
<logger name="org.mybatis.spring.transaction" level="DEBUG"/>
|
|||
|
|
|
|||
|
|
<!-- MyBatis-Plus 相关日志配置 -->
|
|||
|
|
<logger name="com.baomidou.mybatisplus" level="DEBUG"/>
|
|||
|
|
<logger name="com.baomidou.mybatisplus.core" level="DEBUG"/>
|
|||
|
|
<logger name="com.baomidou.mybatisplus.core.MybatisConfiguration" level="DEBUG"/>
|
|||
|
|
<logger name="com.baomidou.mybatisplus.core.MybatisMapperRegistry" level="DEBUG"/>
|
|||
|
|
<logger name="com.baomidou.mybatisplus.core.override.MybatisMapperProxy" level="DEBUG"/>
|
|||
|
|
<logger name="com.baomidou.mybatisplus.extension" level="DEBUG"/>
|
|||
|
|
<logger name="com.baomidou.mybatisplus.extension.spring" level="DEBUG"/>
|
|||
|
|
<logger name="com.baomidou.mybatisplus.extension.MybatisPlusProperties" level="DEBUG"/>
|
|||
|
|
|
|||
|
|
<logger name="java.sql" level="DEBUG"/>
|
|||
|
|
<logger name="java.sql.Connection" level="DEBUG"/>
|
|||
|
|
<logger name="java.sql.Statement" level="DEBUG"/>
|
|||
|
|
<logger name="java.sql.PreparedStatement" level="DEBUG"/>
|
|||
|
|
<logger name="java.sql.ResultSet" level="DEBUG"/>
|
|||
|
|
|
|||
|
|
<logger name="com.sdm.flowable" level="INFO"/>
|
|||
|
|
<logger name="com.sdm.flowable.dao" level="DEBUG"/>
|
|||
|
|
<logger name="com.sdm.flowable.dao" level="DEBUG"/>
|
|||
|
|
</configuration>
|