-- v6 设备级采集模式:达梦数据库升级 -- 强制顺序:停止/保持旧版应用 -> 备份 -> 01 预检 -> 本脚本 -> 03 验证 -> 启动新版 JAR。 -- 新版 syslog-serve 的所有设备查询都会读取 COLLECTION_MODE,本脚本必须在新版 JAR 启动前执行。 -- 本脚本不设置任何现场 device_id;所有既有设备统一回填 BOTH,避免误停原有 Syslog 或 API 任务。 ALTER TABLE DEVICE_DEVICE ADD COLLECTION_MODE VARCHAR2(16) DEFAULT 'BOTH'; UPDATE DEVICE_DEVICE SET COLLECTION_MODE = 'BOTH' WHERE COLLECTION_MODE IS NULL; COMMIT; ALTER TABLE DEVICE_DEVICE MODIFY COLLECTION_MODE VARCHAR2(16) DEFAULT 'BOTH' NOT NULL; ALTER TABLE DEVICE_DEVICE ADD CONSTRAINT CK_DEVICE_COLLECTION_MODE CHECK (COLLECTION_MODE IN ('SYSLOG_ONLY', 'API_ONLY', 'BOTH')); COMMENT ON COLUMN DEVICE_DEVICE.COLLECTION_MODE IS '设备级采集模式:SYSLOG_ONLY、API_ONLY、BOTH;默认 BOTH'; COMMIT; -- API 拉取任务的通用回看默认值改为 0。只改变后续 INSERT 未指定该字段时的默认值; -- 不 UPDATE 已有任务,已有 NDR/全悉等显式 lookback 配置保持不变。 ALTER TABLE DEVICE_COLLECT_API_CONFIG MODIFY LOOKBACK_SECONDS INTEGER DEFAULT 0 NOT NULL; COMMENT ON COLUMN DEVICE_COLLECT_API_CONFIG.LOOKBACK_SECONDS IS '迟到数据回看秒数;默认0,仅在适配器和现场容量允许时由任务显式设置'; COMMIT; -- 微步 5 秒窗口允许单次完整返回最多 50000 条。这里只放宽通用数据库约束; -- NDR、全悉等适配器仍由各自 Java Schema 保持更小的 pageSize 上限。 ALTER TABLE DEVICE_COLLECT_API_CONFIG DROP CONSTRAINT CK_DC_API_CFG_PAGE; ALTER TABLE DEVICE_COLLECT_API_CONFIG ADD CONSTRAINT CK_DC_API_CFG_PAGE CHECK (PAGE_SIZE BETWEEN 1 AND 50000); COMMIT; -- 50000 条 × 每条 10 KiB 约为 488 MiB,响应上限取整放宽到 512 MiB。 -- 微步适配器仍执行自身上限;其他适配器继续保持各自更小的 Java Schema 上限。 ALTER TABLE DEVICE_COLLECT_API_CONFIG DROP CONSTRAINT CK_DC_API_CFG_RESP; ALTER TABLE DEVICE_COLLECT_API_CONFIG ADD CONSTRAINT CK_DC_API_CFG_RESP CHECK (MAX_RESPONSE_BYTES BETWEEN 1024 AND 536870912); COMMIT;