feat(syslog): 优化大日志通道并增加异常连续消费兜底

- 128 KiB 及以上日志默认进入大日志 Topic
- InfluxDB 原文及达梦大字段超过 256 KiB 时截断保存
- 截断内容追加 HB_XDR_TRUNCATED 标记
- InfluxDB 写入失败时继续执行规则解析和达梦写入
- 未知或系统性异常优先写入普通/大日志 DLT
- DLT 写入失败时记录特殊告警并提交 offset,避免阻塞后续消息
- DLT 失败等待时间默认限制为 1 秒
- 增加连续性放行、DLT 成功及失败监控指标
- 更新 Docker Compose、v3 升级文档及相关测试
This commit is contained in:
王绍宏
2026-09-12 19:22:52 +08:00
parent 3b6c9e4714
commit 0e9e6656db
64 changed files with 3189 additions and 63 deletions
@@ -0,0 +1,44 @@
-- v3 达梦升级验证:只读。
-- 应返回 2 行。
SELECT table_name
FROM user_tables
WHERE table_name IN (
'STATS_PROJECTION_OUTBOX',
'STATS_PROJECTION_APPLIED_EVENT'
)
ORDER BY table_name;
-- 核对关键字段;OUTBOX 应包含 11 列,APPLIED_EVENT 应包含 3 列。
SELECT table_name, column_id, column_name, data_type, nullable
FROM user_tab_columns
WHERE table_name IN (
'STATS_PROJECTION_OUTBOX',
'STATS_PROJECTION_APPLIED_EVENT'
)
ORDER BY table_name, column_id;
-- 三个约束都应为 ENABLED。
SELECT table_name, constraint_name, constraint_type, status
FROM user_constraints
WHERE constraint_name IN (
'PK_STATS_PROJECTION_OUTBOX',
'CK_STATS_PROJECTION_OUTBOX_STATUS',
'PK_STATS_PROJECTION_APPLIED'
)
ORDER BY constraint_name;
-- 两个索引都应为 VALID。
SELECT table_name, index_name, uniqueness, status
FROM user_indexes
WHERE index_name IN (
'IDX_STATS_PROJECTION_OUTBOX_DUE',
'IDX_STATS_PROJECTION_APPLIED_TIME'
)
ORDER BY index_name;
-- 刚建表时应返回 0、0;应用启动后数字会正常增长。
SELECT
(SELECT COUNT(*) FROM stats_projection_outbox) AS outbox_rows,
(SELECT COUNT(*) FROM stats_projection_applied_event) AS applied_rows
FROM dual;