日志记录修改

This commit is contained in:
2025-10-30 16:48:20 +08:00
parent 3144e3b26b
commit b808bcf092

View File

@@ -3,154 +3,83 @@
<include resource="org/springframework/boot/logging/logback/defaults.xml" /> <include resource="org/springframework/boot/logging/logback/defaults.xml" />
<!-- 日志存放路径 --> <!-- 日志存放路径 -->
<property name="log.path" value="./logs" /> <property name="log.path" value="./log" />
<!-- 应用名称 --> <!-- 日志输出格式 -->
<property name="app.name" value="lanecarford" /> <!--value为输出格式设置用正则表达式格式化 d:时间 -->
<!--<property name="log.pattern" value="%d{yyyy-MM-dd HH:mm:ss.SSS} %-5level [%thread] %-5level %logger{36} - [%method,%line] - %msg%n" />-->
<!-- 控制台日志输出格式 -->
<property name="log.pattern.console" value="${CONSOLE_LOG_PATTERN:-%clr(%d{${LOG_DATEFORMAT_PATTERN:-yyyy-MM-dd HH:mm:ss.SSS}}){faint} %clr(${LOG_LEVEL_PATTERN:-%5p}) %clr(${PID:- }){magenta} %clr(---){faint} %clr([%15.15t]){faint} %clr(%-40.40logger{39}){cyan} %clr(:){faint} %m%n${LOG_EXCEPTION_CONVERSION_WORD:-%wEx}}" /> <property name="log.pattern.console" value="${CONSOLE_LOG_PATTERN:-%clr(%d{${LOG_DATEFORMAT_PATTERN:-yyyy-MM-dd HH:mm:ss.SSS}}){faint} %clr(${LOG_LEVEL_PATTERN:-%5p}) %clr(${PID:- }){magenta} %clr(---){faint} %clr([%15.15t]){faint} %clr(%-40.40logger{39}){cyan} %clr(:){faint} %m%n${LOG_EXCEPTION_CONVERSION_WORD:-%wEx}}" />
<!-- 文件日志输出格式 -->
<property name="log.pattern.file" value="${FILE_LOG_PATTERN:-%d{${LOG_DATEFORMAT_PATTERN:-yyyy-MM-dd HH:mm:ss.SSS}} ${LOG_LEVEL_PATTERN:-%5p} ${PID:- } --- [%15t] %-40.40logger{39} : %m%n${LOG_EXCEPTION_CONVERSION_WORD:-%wEx}}" /> <property name="log.pattern.file" value="${FILE_LOG_PATTERN:-%d{${LOG_DATEFORMAT_PATTERN:-yyyy-MM-dd HH:mm:ss.SSS}} ${LOG_LEVEL_PATTERN:-%5p} ${PID:- } --- [%15t] %-40.40logger{39} : %m%n${LOG_EXCEPTION_CONVERSION_WORD:-%wEx}}" />
<!-- 控制台输出 --> <!-- 控制台输出 -->
<appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender"> <appender name="console" class="ch.qos.logback.core.ConsoleAppender">
<encoder> <encoder>
<pattern>${log.pattern.console}</pattern> <pattern>${log.pattern.console}</pattern>
<charset>UTF-8</charset>
</encoder> </encoder>
</appender> </appender>
<!-- 系统信息日志输出 --> <!-- 系统日志输出 -->
<appender name="FILE_INFO" class="ch.qos.logback.core.rolling.RollingFileAppender"> <!--动态的创建一个文件,将日志写入到新的文件中-->
<file>${log.path}/${app.name}-info.log</file> <appender name="file_info" class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>${log.path}/lanecrawford-info.log</file>
<!-- 循环政策:基于时间创建日志文件 --> <!-- 循环政策:基于时间创建日志文件 -->
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<!-- 日志文件名格式 --> <!-- 日志文件名格式 -->
<fileNamePattern>${log.path}/${app.name}-info.%d{yyyy-MM-dd}.log</fileNamePattern> <fileNamePattern>${log.path}/lanecrawford-info.%d{yyyy-MM-dd}.log</fileNamePattern>
<!-- 日志最大的历史 60天 --> <!-- 日志最大的历史 60天 -->
<maxHistory>60</maxHistory> <maxHistory>60</maxHistory>
<!-- 单个文件最大大小 -->
<maxFileSize>100MB</maxFileSize>
<!-- 总日志文件大小 -->
<totalSizeCap>10GB</totalSizeCap>
</rollingPolicy> </rollingPolicy>
<!--encoder 将事件转换为格式化后的日志记录,在文件中输出-->
<encoder> <encoder>
<pattern>${log.pattern.file}</pattern> <pattern>${log.pattern.file}</pattern>
<charset>UTF-8</charset>
</encoder> </encoder>
<!-- 过滤器只记录INFO及以上级别排除ERROR --> <!--LevelFilter过滤器对指定level的日志进行记录或不记录
对不等于指定level的日志不记录或记录-->
<filter class="ch.qos.logback.classic.filter.LevelFilter"> <filter class="ch.qos.logback.classic.filter.LevelFilter">
<level>ERROR</level> <!-- 过滤的级别 只会打印debug不会有info日志-->
<onMatch>DENY</onMatch> <!-- <level>DEBUG</level>-->
<onMismatch>ACCEPT</onMismatch> <!-- 匹配时的操作:接收(记录) -->
</filter>
</appender>
<!-- 错误日志输出 -->
<appender name="FILE_ERROR" class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>${log.path}/${app.name}-error.log</file>
<!-- 循环政策:基于时间创建日志文件 -->
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<!-- 日志文件名格式 -->
<fileNamePattern>${log.path}/${app.name}-error.%d{yyyy-MM-dd}.log</fileNamePattern>
<!-- 日志最大的历史 60天 -->
<maxHistory>60</maxHistory>
<!-- 单个文件最大大小 -->
<maxFileSize>100MB</maxFileSize>
<!-- 总日志文件大小 -->
<totalSizeCap>5GB</totalSizeCap>
</rollingPolicy>
<encoder>
<pattern>${log.pattern.file}</pattern>
<charset>UTF-8</charset>
</encoder>
<!-- 过滤器只记录ERROR级别 -->
<filter class="ch.qos.logback.classic.filter.LevelFilter">
<level>ERROR</level>
<onMatch>ACCEPT</onMatch> <onMatch>ACCEPT</onMatch>
<!-- 不匹配时的操作:拒绝(不记录) -->
<onMismatch>DENY</onMismatch> <onMismatch>DENY</onMismatch>
</filter> </filter>
</appender> </appender>
<!-- 业务日志输出 --> <appender name="file_error" class="ch.qos.logback.core.rolling.RollingFileAppender">
<appender name="FILE_BUSINESS" class="ch.qos.logback.core.rolling.RollingFileAppender"> <file>${log.path}/lanecrawford-error.log</file>
<file>${log.path}/${app.name}-business.log</file> <!-- 循环政策:基于时间创建日志文件 -->
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<fileNamePattern>${log.path}/${app.name}-business.%d{yyyy-MM-dd}.log</fileNamePattern> <!-- 日志文件名格式 -->
<maxHistory>30</maxHistory> <fileNamePattern>${log.path}/lanecrawford-error.%d{yyyy-MM-dd}.log</fileNamePattern>
<maxFileSize>100MB</maxFileSize> <!-- 日志最大的历史 60天 -->
<totalSizeCap>5GB</totalSizeCap> <maxHistory>60</maxHistory>
</rollingPolicy> </rollingPolicy>
<encoder> <encoder>
<pattern>${log.pattern.file}</pattern> <pattern>${log.pattern.file}</pattern>
<charset>UTF-8</charset>
</encoder> </encoder>
<filter class="ch.qos.logback.classic.filter.LevelFilter">
<!-- 过滤的级别 -->
<level>ERROR</level>
<!-- 匹配时的操作:接收(记录) -->
<onMatch>ACCEPT</onMatch>
<!-- 不匹配时的操作:拒绝(不记录) -->
<onMismatch>DENY</onMismatch>
</filter>
</appender> </appender>
<!-- 项目特定日志级别控制 --> <!-- 系统模块日志级别控制 -->
<logger name="com.aida.lanecarford" level="DEBUG" additivity="false"> <logger name="com.aida.lanecarford" level="debug" />
<appender-ref ref="CONSOLE" /> <logger name="com.aida.lanecarford.mapper" level="info" />
<appender-ref ref="FILE_INFO" /> <!-- Spring日志级别控制 -->
<appender-ref ref="FILE_ERROR" /> <logger name="org.springframework" level="warn" />
<appender-ref ref="FILE_BUSINESS" />
</logger>
<!-- MyBatis Plus日志级别控制 --> <root level="info">
<logger name="com.aida.lanecarford.mapper" level="DEBUG" /> <appender-ref ref="console" />
<logger name="com.baomidou.mybatisplus" level="INFO" />
<!-- Spring框架日志级别控制 -->
<logger name="org.springframework" level="WARN" />
<logger name="org.springframework.web" level="INFO" />
<logger name="org.springframework.security" level="INFO" />
<!-- Swagger日志级别控制 -->
<logger name="org.springdoc" level="INFO" />
<logger name="io.swagger" level="WARN" />
<!-- HTTP客户端日志级别控制 -->
<logger name="org.apache.http" level="WARN" />
<logger name="okhttp3" level="INFO" />
<!-- 数据库连接池日志级别控制 -->
<logger name="com.zaxxer.hikari" level="INFO" />
<logger name="com.alibaba.druid" level="INFO" />
<!-- 根日志级别 -->
<root level="INFO">
<appender-ref ref="CONSOLE" />
<appender-ref ref="FILE_INFO" />
<appender-ref ref="FILE_ERROR" />
</root> </root>
<!-- 开发环境配置 --> <!--系统操作日志-->
<springProfile name="dev"> <root level="info">
<logger name="com.aida.lanecarford" level="INFO" /> <appender-ref ref="file_info" />
<logger name="org.springframework.web" level="INFO" /> <appender-ref ref="file_error" />
<root level="INFO"> </root>
<appender-ref ref="CONSOLE" />
</root>
</springProfile>
<!-- 测试环境配置 -->
<springProfile name="test">
<logger name="com.aida.lanecarford" level="INFO" />
<root level="INFO">
<appender-ref ref="CONSOLE" />
<appender-ref ref="FILE_INFO" />
<appender-ref ref="FILE_ERROR" />
</root>
</springProfile>
<!-- 生产环境配置 -->
<springProfile name="prod">
<logger name="com.aida.lanecarford" level="WARN" />
<logger name="org.springframework" level="ERROR" />
<root level="WARN">
<appender-ref ref="FILE_INFO" />
<appender-ref ref="FILE_ERROR" />
</root>
</springProfile>
</configuration> </configuration>