| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105 |
- <?xml version="1.0" encoding="UTF-8"?>
- <configuration>
- <!-- 日志文件输出目录 -->
- <!-- 支持系统属性和环境变量覆盖:LOG_FILE_PATH 和 LOG_FILE_NAME -->
- <property name="LOG_FILE_PATH" value="${LOG_FILE_PATH:-./logs}"/>
- <property name="LOG_FILE_NAME" value="${LOG_FILE_NAME:-msPayment2.0}"/>
- <!-- Spring Boot 默认配置 -->
- <include resource="org/springframework/boot/logging/logback/defaults.xml"/>
- <!-- 控制台输出 -->
- <appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">
- <encoder>
- <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</pattern>
- <charset>UTF-8</charset>
- </encoder>
- </appender>
- <!-- 按日期滚动的文件输出 -->
- <appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
- <!-- 当前日志文件 -->
- <file>${LOG_FILE_PATH}/${LOG_FILE_NAME}.log</file>
- <!-- 滚动策略 -->
- <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
- <!-- 日志文件名模式:按日期格式(yyyy-MM-dd)生成 -->
- <fileNamePattern>${LOG_FILE_PATH}/${LOG_FILE_NAME}-%d{yyyy-MM-dd}.%i.log</fileNamePattern>
- <!-- 日志文件保留时间:30天 -->
- <maxHistory>30</maxHistory>
- <!-- 单个日志文件最大大小 -->
- <maxFileSize>100MB</maxFileSize>
- <!-- 所有日志文件的总大小限制 -->
- <totalSizeCap>10GB</totalSizeCap>
- </rollingPolicy>
- <encoder>
- <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</pattern>
- <charset>UTF-8</charset>
- </encoder>
- </appender>
- <!-- 错误日志文件 -->
- <appender name="ERROR_FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
- <file>${LOG_FILE_PATH}/${LOG_FILE_NAME}-error.log</file>
- <filter class="ch.qos.logback.classic.filter.LevelFilter">
- <level>ERROR</level>
- <onMatch>ACCEPT</onMatch>
- <onMismatch>DENY</onMismatch>
- </filter>
- <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
- <fileNamePattern>${LOG_FILE_PATH}/${LOG_FILE_NAME}-error-%d{yyyy-MM-dd}.%i.log</fileNamePattern>
- <maxHistory>30</maxHistory>
- <maxFileSize>100MB</maxFileSize>
- <totalSizeCap>10GB</totalSizeCap>
- </rollingPolicy>
- <encoder>
- <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</pattern>
- <charset>UTF-8</charset>
- </encoder>
- </appender>
- <!-- Spring 框架日志级别 -->
- <logger name="org.springframework" level="INFO"/>
- <logger name="org.springframework.boot" level="INFO"/>
- <logger name="org.springframework.data" level="INFO"/>
- <!-- Kafka 日志级别 -->
- <logger name="org.apache.kafka" level="WARN"/>
- <!-- MongoDB 日志级别 -->
- <logger name="org.springframework.data.mongodb" level="DEBUG"/>
- <!-- 开发环境配置 -->
- <springProfile name="dev">
- <root level="DEBUG">
- <appender-ref ref="CONSOLE"/>
- <appender-ref ref="FILE"/>
- <appender-ref ref="ERROR_FILE"/>
- </root>
- </springProfile>
- <!-- 生产环境配置 -->
- <springProfile name="pro">
- <root level="INFO">
- <appender-ref ref="FILE"/>
- <appender-ref ref="ERROR_FILE"/>
- </root>
- </springProfile>
- <!-- 默认配置(如果没有激活 profile) -->
- <root level="INFO">
- <appender-ref ref="CONSOLE"/>
- <appender-ref ref="FILE"/>
- <appender-ref ref="ERROR_FILE"/>
- </root>
- </configuration>
|