Files
junhong_cmp_fiber/openspec/changes/archive/2026-08-20-daily-audit-log-retention/proposal.md
2026-08-20 12:03:17 +08:00

29 lines
1.8 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
## Why
`tb_audit_event``tb_audit_event_resource``tb_integration_log` 每日持续写入百万级记录;现有物理留存任务仅在月初清理上一个完整自然月,在线表、索引和备份在月内持续膨胀。生产需要在确认对象存储归档完整且可恢复后,按日清理在线日志数据。
## What Changes
- 将统一审计事件、审计资源快照和 Integration Log 的物理留存单位由完整自然月改为完整自然日。
- 每次日留存任务处理昨天及更早仍未完成清理的归档日;仅在对应 Audit 与 Integration 归档均成功、完整、可读取且满足最终版要求时,分批物理删除在线表中该日的数据。
- 将清理断点和查询留存边界改为按归档日表达,支持失败后从未完成日期续跑,且不删除未通过校验的日期。
- 保留对象存储归档和现有物理清理开关;不降低卡观测、轮询或外部交互日志的写入频率。
## Capabilities
### New Capabilities
无。
### Modified Capabilities
- `operations-audit`: 审计在线数据在逐日归档校验通过后按归档日物理留存,并向调查查询提供逐日清理边界。
- `external-integration`: 外部交互日志在逐日最终归档校验通过后按归档日物理留存。
## Impact
- Worker 定时任务、审计归档服务、月度留存处理器和留存边界查询。
- `tb_log_archive_run` 的清理断点语义,以及 `tb_audit_event``tb_audit_event_resource``tb_integration_log` 的物理删除范围。
- 对象存储归档读取、manifest 与哈希校验。
- 生产需更新 Worker 二进制、`JUNHONG_WORKER_AUDIT_RETENTION_CLEANUP_ENABLED` 及独立留存日志配置;日志写入 Worker 工作目录下的 `logs/audit-retention.log`,不新增外部 API不直接执行生产数据删除或迁移。