feature: add log system

This commit is contained in:
2025-08-06 09:24:20 +08:00
parent bc409e516f
commit dc70f38e29
5 changed files with 101 additions and 14 deletions

View File

@@ -0,0 +1,74 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- status内部日志级别monitorInterval每30秒检测一次配置文件是否有变化自动重载 -->
<Configuration status="WARN" monitorInterval="30">
<Properties>
<!-- 日志输出目录 -->
<Property name="LOG_HOME">logs</Property>
<!-- 通用日志输出格式 -->
<Property name="LOG_PATTERN">%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</Property>
</Properties>
<Appenders>
<!-- 控制台输出 -->
<Console name="Console" target="SYSTEM_OUT">
<PatternLayout pattern="${LOG_PATTERN}"/>
</Console>
<!-- Info 日志文件,支持时间和大小滚动 -->
<RollingFile name="InfoFile" fileName="${LOG_HOME}/app-info.log"
filePattern="${LOG_HOME}/app-info-%d{yyyy-MM-dd}-%i.log.gz">
<PatternLayout pattern="${LOG_PATTERN}"/>
<Policies>
<!-- 超过指定大小就切割 -->
<SizeBasedTriggeringPolicy size="10 MB"/>
<!-- 每天切割一次 -->
<TimeBasedTriggeringPolicy/>
</Policies>
<!-- 最多保留15个历史文件 -->
<DefaultRolloverStrategy max="15"/>
<!-- 只接收 info 及以上,但不包含 errorerror 会被 error_file 接收) -->
<Filters>
<ThresholdFilter level="info" onMatch="ACCEPT" onMismatch="DENY"/>
</Filters>
</RollingFile>
<!-- Error 日志文件,按时间/大小滚动 -->
<RollingFile name="ErrorFile" fileName="${LOG_HOME}/app-error.log"
filePattern="${LOG_HOME}/app-error-%d{yyyy-MM-dd}-%i.log.gz">
<PatternLayout pattern="${LOG_PATTERN}"/>
<Policies>
<SizeBasedTriggeringPolicy size="10 MB"/>
<TimeBasedTriggeringPolicy/>
</Policies>
<DefaultRolloverStrategy max="15"/>
<!-- 只记录 error 级别日志 -->
<Filters>
<ThresholdFilter level="error" onMatch="ACCEPT" onMismatch="DENY"/>
</Filters>
</RollingFile>
</Appenders>
<Loggers>
<!-- com.ctgu 包下的类使用 debug 级别 -->
<Logger name="com.ctgu.log" level="debug" additivity="false">
<!-- 不向上root传递防止重复打印 -->
<AppenderRef ref="Console"/>
<AppenderRef ref="InfoFile"/>
<AppenderRef ref="ErrorFile"/>
</Logger>
<!-- 默认全局日志级别,设为 info低于 info 的日志不会打印) -->
<Root level="info">
<AppenderRef ref="Console"/>
<AppenderRef ref="InfoFile"/>
<AppenderRef ref="ErrorFile"/>
</Root>
</Loggers>
</Configuration>