feat(syslog): 增加积压采样免采样窗口

- 新增 start-lag-ms 配置,默认15分钟内全量保留
- 在15分钟至1小时之间按10级逐步降低保留率
- 延迟达到1小时后使用普通10%、非标20%的最低保留率
- 校验起始延迟必须小于最低保留率阈值
- 状态接口新增 start_lag_ms 配置展示
- 将采样策略版本升级为 v2
- 更新 Docker Compose 和 v4 升级配置说明
- 补充采样时间边界及非法配置单元测试
This commit is contained in:
王绍宏
2026-09-12 23:43:56 +08:00
parent c868e3befd
commit 87fee6fe69
27 changed files with 1777 additions and 94 deletions
@@ -61,6 +61,16 @@ services:
# 特殊异常优先写入 DLT;DLT 失败也记录后放行,避免单条/单批异常永久阻塞分区。
- SYSLOG_FAILURE_CONTINUITY_ENABLED=true
- SYSLOG_FAILURE_CONTINUITY_DLT_PUBLISH_TIMEOUT_MS=1000
# 积压采样默认开启;升级应用前先执行 upgrade-doc/v4/database 脚本。
- SYSLOG_BACKLOG_SAMPLING_ENABLED=true
- SYSLOG_BACKLOG_SAMPLING_START_LAG_MS=900000
- SYSLOG_BACKLOG_SAMPLING_LAG_THRESHOLD_MS=3600000
- SYSLOG_BACKLOG_SAMPLING_NORMAL_RETAIN_BPS=1000
- SYSLOG_BACKLOG_SAMPLING_NON_NORMAL_RETAIN_BPS=2000
- SYSLOG_BACKLOG_SAMPLING_DEGRADE_STEPS=10
- SYSLOG_BACKLOG_SAMPLING_POLICY_VERSION=v2
- SYSLOG_BACKLOG_SAMPLING_AUDIT_TIMEOUT_SECONDS=5
- SYSLOG_BACKLOG_SAMPLING_AUDIT_RETRY_BACKOFF_MS=60000
# 大日志的 poll、fetch、批次和规则计算线程池均独立且有界。
- SYSLOG_LARGE_LISTENER_ENABLED=true
- SYSLOG_LARGE_LISTENER_CONCURRENCY=1
@@ -96,6 +106,9 @@ services:
- INFLUXDB_RAW_QUERY_MAX_RESPONSE_BYTES=10485760
- INFLUXDB_RAW_MESSAGE_MAX_UTF8_BYTES=262144
- INFLUXDB_RAW_WRITE_BATCH_MAX_BYTES=8388608
# InfluxDB 原文写是非关键旁路:请求超时后熔断退避,主消费继续。
- INFLUXDB_RAW_WRITE_REQUEST_TIMEOUT=5s
- INFLUXDB_RAW_FAILURE_BACKOFF_MS=30000
- DM_NORMAL_LARGE_FIELD_MAX_UTF8_BYTES=262144
- DM_NON_NORMAL_LARGE_FIELD_MAX_UTF8_BYTES=262144
- INFLUXDB_BATCH_SIZE=1000