Files
ai-security-xdr/haobang-security-dm/upgrade-doc/v6/database/03-device-collection-mode-verify.sql
T
王绍宏 d7fcbdde92 feat(syslog-serve): 优化微步5秒窗口与5万条日志采集
- 将 API 拉取任务的 lookbackSeconds 通用默认值调整为 0
- 微步任务采用5秒时间窗口、50000条单窗口上限和64MiB响应保护
- 将微步适配器及管理接口的 pageSize 上限放宽至50000
- 将 API 调度扫描默认周期调整为1000毫秒
- 兼容新旧调度扫描环境变量名称
- 更新达梦数据库 PAGE_SIZE 约束及 LOOKBACK_SECONDS 默认值
- 补充 v6 数据库预检、升级和验证脚本
- 更新微步任务模板、现场操作说明和启动版本标识
- 增加配置边界及启动参数自动化测试

验证:
- JDK 8 Maven测试通过:167个,失败0,错误0,跳过2
- git diff --check通过
2026-09-17 23:15:15 +08:00

47 lines
1.8 KiB
SQL

-- v6 设备级采集模式:达梦数据库升级后验证
-- 本脚本只读。所有检查通过后才允许启动新版 syslog-serve JAR。
-- 1. 预期 1 行:VARCHAR2(16)、NULLABLE=N、DATA_DEFAULT 包含 BOTH。
SELECT COLUMN_NAME, DATA_TYPE, DATA_LENGTH, NULLABLE, DATA_DEFAULT
FROM USER_TAB_COLUMNS
WHERE TABLE_NAME = 'DEVICE_DEVICE'
AND COLUMN_NAME = 'COLLECTION_MODE';
-- 2. 预期 1 行:CONSTRAINT_TYPE=C、STATUS=ENABLED。
SELECT CONSTRAINT_NAME, CONSTRAINT_TYPE, STATUS
FROM USER_CONSTRAINTS
WHERE TABLE_NAME = 'DEVICE_DEVICE'
AND CONSTRAINT_NAME = 'CK_DEVICE_COLLECTION_MODE';
-- 3. 预期 INVALID_MODE_TOTAL=0。
SELECT COUNT(*) AS INVALID_MODE_TOTAL
FROM DEVICE_DEVICE
WHERE COLLECTION_MODE IS NULL
OR COLLECTION_MODE NOT IN ('SYSLOG_ONLY', 'API_ONLY', 'BOTH');
-- 4. 首次升级且尚未调用管理 API 时,预期只有 BOTH,数量与预检 DEVICE_TOTAL 一致。
SELECT COLLECTION_MODE, COUNT(*) AS DEVICE_TOTAL
FROM DEVICE_DEVICE
GROUP BY COLLECTION_MODE
ORDER BY COLLECTION_MODE;
-- 验证脚本不创建测试设备,也不绑定任何现场 device_id。
-- 5. 预期 1 行:LOOKBACK_SECONDS、NULLABLE=N、DATA_DEFAULT 为 0。
SELECT COLUMN_NAME, DATA_TYPE, NULLABLE, DATA_DEFAULT
FROM USER_TAB_COLUMNS
WHERE TABLE_NAME = 'DEVICE_COLLECT_API_CONFIG'
AND COLUMN_NAME = 'LOOKBACK_SECONDS';
-- 6. 仅统计已有任务分布,不要求全部为 0;升级脚本不会覆盖已有任务的显式配置。
SELECT LOOKBACK_SECONDS, COUNT(*) AS TASK_TOTAL
FROM DEVICE_COLLECT_API_CONFIG
GROUP BY LOOKBACK_SECONDS
ORDER BY LOOKBACK_SECONDS;
-- 7. 预期 1 行且 SEARCH_CONDITION 包含 PAGE_SIZE BETWEEN 1 AND 50000。
SELECT CONSTRAINT_NAME, CONSTRAINT_TYPE, STATUS, SEARCH_CONDITION
FROM USER_CONSTRAINTS
WHERE TABLE_NAME = 'DEVICE_COLLECT_API_CONFIG'
AND CONSTRAINT_NAME = 'CK_DC_API_CFG_PAGE';