perf: 优化日志保留与分页查询
- 降低普通只读请求的日志写入并保留敏感 GET 审计 - 增加数据库分批清理、时间索引和文件滚动容量上限 - 增加近 30 天筛选、稳定倒序和分页大小限制
This commit is contained in:
@@ -84,6 +84,15 @@ spring:
|
||||
enabled: true
|
||||
|
||||
easyflow:
|
||||
log-record:
|
||||
# 普通只读请求不写操作日志;需要审计的读取接口使用 @LogRecord 显式标注
|
||||
record-read-actions: false
|
||||
retention:
|
||||
enabled: true
|
||||
days: 90
|
||||
batch-size: 5000
|
||||
max-batches: 20
|
||||
cron: "0 30 2 * * *"
|
||||
security:
|
||||
account:
|
||||
default-reset-password: '${EASYFLOW_DEFAULT_RESET_PASSWORD:!QAZ2wsx}'
|
||||
|
||||
@@ -0,0 +1,2 @@
|
||||
CREATE INDEX `idx_sys_log_created_id`
|
||||
ON `tb_sys_log` (`created`, `id`);
|
||||
@@ -31,9 +31,11 @@
|
||||
<appender name="LOGFILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
|
||||
<file>${LOG_PATH}/${LOG_FILE}</file>
|
||||
<rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
|
||||
<fileNamePattern>${LOG_PATH}/%d{yyyy-MM-dd}/${LOG_FILE}-%i</fileNamePattern>
|
||||
<fileNamePattern>${LOG_PATH}/%d{yyyy-MM-dd}/${LOG_FILE}-%i.gz</fileNamePattern>
|
||||
<maxFileSize>50MB</maxFileSize>
|
||||
<maxHistory>30</maxHistory>
|
||||
<totalSizeCap>5GB</totalSizeCap>
|
||||
<cleanHistoryOnStart>true</cleanHistoryOnStart>
|
||||
</rollingPolicy>
|
||||
<encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
|
||||
<pattern>%d{MM-dd HH:mm:ss.SSS} |-%-5level %logger{36} - %m%n</pattern>
|
||||
|
||||
Reference in New Issue
Block a user