复查告警逻辑,又揪出四处同类问题
上一条修完,我按同一个毛病——“想当然认为某个字段是什么意思,却没去核对它到底怎么算的”——把这套告警从头审了一遍,又发现四处,全部修掉并补了测试。
- 休市时切换合约月份会误报故障:切月份时系统会把状态标成“加载中”,我把它当成了“正在连接”,于是晚上换个月份就报 critical。实际上换月份跟连接好不好毫无关系。
- 真正一整天没有任何变化的假日会误报故障:我拿来当心跳的那个时间戳,其实只在“数据发生变化”时才前进——一动不动的假日它自然就停了。已经改成记录“行情源有没有在说话”的真心跳,不管说的内容变没变。
- 最需要诊断的时候反而看不到诊断:页面读的那个接口在行情线程真的挂掉时会返回 503,于是前端拿不到结果,只能退回旧的笼统措辞——恰恰在真出故障时失效。改读一个始终可用的接口。
- 一次性的小错误会让警告永远挂着:行情批次校验失败的计数是累计的、永不归零,一次偶发错误会让警告显示到进程重启为止。改成只看最近一小时内是否真的发生过。
- 告警接口和主动推送原本各写了一份判断逻辑,迟早会不一致——变成“网页说没事、推送说有事”。已合并成同一份。
只修故障判断;不改行情、计算、策略建议或交易安全边界。后端测试从 190 增至 201 项,新增的每一条都对应上面一个具体的误报场景。