feat: 新增设备 API 拉取采集及配套处理能力

- 接入 NDRServer 告警和流量日志,支持凭据与任务管理
- 支持分页拉取、窗口拆分、调度优先级及 WAL 持久化后推进断点
- 增加迟到告警规则重放,优化多条泛化规则选择和事件时间处理
- 补充回归测试、数据库升级脚本及部署文档
This commit is contained in:
王绍宏
2026-09-06 16:46:21 +08:00
parent b61ec2e37c
commit 00c0a1fb7f
141 changed files with 11318 additions and 467 deletions
@@ -72,8 +72,11 @@ public class AppProperties {
@Value("${syslog.wal.segment-max-bytes:268435456}")
private long syslogWalSegmentMaxBytes;
/** 已完成段的保留天数;0 表示不自动删除。 */
@Value("${syslog.wal.retention-days:0}")
/**
* 已完成并确认投递的 WAL 分段保留天数,默认 2 天;0 表示不自动删除。
* 启动时立即清理,运行期间随 checkpoint 推进最多每 30 分钟清理一次。
*/
@Value("${syslog.wal.retention-days:2}")
private int syslogWalRetentionDays;
@Value("${syslog.wal.shutdown-timeout-ms:30000}")
@@ -86,12 +89,17 @@ public class AppProperties {
@Value("${syslog.wal.checkpoint-flush-interval-ms:200}")
private long syslogWalCheckpointFlushIntervalMs;
@Value("${syslog.wal.disk-high-watermark-percent:80}")
/**
* WAL 所在文件系统的使用率保护线。系统会把该百分比换算为剩余容量,
* 再与 syslog.wal.min-free-bytes 比较,取较小值作为实际停止接入线。
*/
@Value("${syslog.wal.disk-high-watermark-percent:90}")
private int syslogWalDiskHighWatermarkPercent;
@Value("${syslog.wal.disk-critical-watermark-percent:90}")
private int syslogWalDiskCriticalWatermarkPercent;
/**
* 实际停止接入线的容量上限,默认 10GiB。大磁盘最多预留 10GiB,
* 小磁盘则按使用率保护线对应的更小剩余容量处理。
*/
@Value("${syslog.wal.min-free-bytes:10737418240}")
private long syslogWalMinFreeBytes;