新闻
告警不是按严重程度排,是先分三堆:把「告警三堆」、分堆判据和每月复盘的那笔账讲清楚
摘要:后台告警不该按严重程度排成一个队列,要先按「要不要人动手」分成三堆:自愈类、远程干预类、现场类。严重程度是配置时设定的静态标签,不区分这条告警会不会自己消失;分堆按判据字段来,分完之后现场类会自然置顶。分堆省下的不是告警条数,是现场类的发现时延和逐条人工判类的工时。
先给结论:后台的告警不该按严重程度排成一个队列,而要先按「要不要人动手」分成三堆——自愈类、远程干预类、现场类。严重程度是一个静态标签,它不区分这条告警会不会自己消失;而三堆的分法是按判据字段来的,分完之后现场类会自然置顶。分堆省下的不是告警条数,是现场类的发现时延和逐条人工判类的工时。
为什么告警会变成一个不分先后的队列
多数后台把告警做成一条按时间倒序的列表,配一个严重程度标签。这个设计本身没问题,问题是它隐含了一个假设:每条告警都需要人来读一遍。这个假设在设备数量小的时候成立,机队一大就不成立。
第一层:告警来自多个源头,生成时刻不同
第一层是现象。设备侧的告警至少有三类来源:心跳与在线状态、指令回执、字段比对(比如备案 ICCID 与当前 ICCID 不一致)。它们的生成时刻不同,密度也不同——心跳类会在网络波动时集中出现,字段比对类只在状态真发生变化时出现。混成一条列表之后,密度差异被抹平了。
第二层:告警只说明观测值与预期不一致,不说明要不要人动
第二层是直接原因。一条告警的本质是「某个字段的取值偏离了预期」。它回答的是「有没有偏离」,不回答「要不要处理」。要不要处理取决于偏离的成因:外部状态临时变化造成的偏离会自己恢复,配置或硬件层面造成的偏离不会。
第三层:一部分告警自带自愈路径
第三层是底层机制。设备与服务端之间不是持续连接,而是按间隔确认。设备检查由服务端按间隔发起,间隔上限是 24 小时;一次临时断网造成的失联,在网络恢复后的下一次检查就会自动纠正。也就是说这一批告警在机制上会自己消失,只是需要一个观察窗口。
依赖的前提有两个:一是设备仍在同一管理域内,二是外部状态会恢复。两条都不成立时,自愈类会一直挂着,这也是为什么自愈类不能简单地「不看」。
三堆怎么分:判据字段而不是严重程度
分堆的关键是每个堆都要有可查询的字段,不能靠人读描述文字判断。
自愈类:等一个观察窗
判据是「成因属于外部状态临时变化」。可查的字段是最后心跳时间与在线状态的变化曲线——最近一个窗口内出现过一次成功回连的,多数属于这一堆。预期自愈时长以设备检查间隔为准,上限 24 小时。
远程干预类:要有人发一次
判据是「指令回执不是成功」。可查的字段是指令回执状态与最后回执时间。回执状态里除了成功与失败,还有排队中这一类——它说明指令已经发出但还没落到设备上。这一堆的处置是重推指令、重新安装描述文件、或者核对推送通道的证书有效期。
现场类:必须有人碰这台机器
判据是「设备侧的物理或凭证状态与台账不一致」。可查的字段是当前 ICCID、系统版本、存储介质容量这一类只读或半只读字段。这类偏离不会自己恢复,因为成因不在链路上,而在设备上。处置需要有人把机器拿到手上。
一张对照表:三堆的判据、时长与工时
| 分堆 | 判据字段 | 预期自愈时长 | 处置动作 | 单条人工 |
|---|---|---|---|---|
| 自愈类 | 最后心跳时间、在线状态曲线 | 不超过 24 小时 | 进入观察队列,超时转人工 | 超时后 2 分钟 |
| 远程干预类 | 指令回执状态、最后回执时间 | 不会自愈 | 重推指令 / 重装描述文件 / 核对证书 | 5 分钟 |
| 现场类 | 当前 ICCID、系统版本、容量 | 不会自愈 | 现场核对并更新台账字段 | 30 分钟 |
这张表的价值在最后一列:三堆的人工成本差一个数量级。排序的时候按严重程度,等于把 2 分钟和 30 分钟的事放在同一个权重下竞争。
自愈类为什么不能当成正常
自愈类容易被两种极端对待:要么当成噪声全部忽略,要么当成异常逐条确认。两种都错,原因是自愈有前提。
自愈的前提是外部状态会恢复,而这个前提的检验方式只有一个:在观察窗口结束时再看一次。观察窗的时长取设备检查间隔的上限,即 24 小时——比这个窗口更长的等待没有意义,因为服务端已经发起过至少一次确认;比这个窗口更短的判断则容易把正常波动当成故障。
还有一个独立的失效路径要单独记:推送通道的证书一年一签,过期之后设备收不到任何唤醒,看起来与临时断网完全一致,但不会自愈。因此观察窗口结束时仍未恢复的,必须先查证书有效期,再决定是否升级为现场类。
一个可以自己复算的算例
以 300 台在管机队、月均告警 180 条为例,按上面的判据字段分堆后得到常见结构:自愈类 120 条、远程干预类 45 条、现场类 15 条。
不分堆时的工时:每条都要人打开设备页判断属于哪一类,2 分钟一条,180 条合计 360 分钟;再加上远程干预类 45 条各 5 分钟计 225 分钟,现场类 15 条各 30 分钟计 450 分钟;合计 1035 分钟,折合 17.25 小时,按 30 元每小时计约 518 元每月。
分堆之后:自愈类由系统按字段自动判定,只在超过 24 小时观察窗后转人工,按 10% 超时计约 12 条各 2 分钟共 24 分钟;远程与现场两类工时不变,225 + 450 = 675 分钟;合计 699 分钟,折合 11.65 小时,约 350 元每月。
两者相差 336 分钟,即 5.6 小时每月、约 2016 元每年。这笔钱全部来自「逐条人工判类」这一个动作。
更关键的差在时延。不分堆时,15 条现场类平均排在队列第 90 位,前面每条 2 分钟,发现时延是 180 分钟;分堆之后现场类置顶,识别时间由字段判定给出,压到 5 分钟以内。这 15 台机器在这段时间里处于不受管控状态,按单台 6000 元计,对应 90,000 元的敞口。
三个可以自己验的动作
一是按最后心跳时间倒序拉一份清单,把最近 24 小时内恢复过连接的标出来,数一数占比。这个占比就是自愈类的规模,也是分堆能省下多少工时的直接依据。
二是导出指令回执,统计非成功状态里「排队中」占多少。这一档最容易被当成失败处理,实际上它说明的是指令还没落到设备上,重推反而可能造成重复执行。
三是抽 5 台现场类设备,核对台账里的当前 ICCID 与系统版本是否与设备上的实际取值一致。不一致的,说明字段比对的告警被当成噪声忽略过。
三个常见误区(附为什么错)
误区一:告警越多越危险。
错在把条数当成风险指标。自愈类占比高通常说明观测灵敏,不代表风险上升。要看的是现场类的条数与它们的发现时延,这两个才是与敞口直接相关的量。
误区二:按严重程度排序就够了。
错在严重程度是静态标签,由配置时设定,不随成因变化。一条被标为严重的临时断网,和一条被标为提示的字段不一致,后者需要人动手而前者不需要——按标签排会把这个关系排反。
误区三:自愈类不用管,放着就好。
错在自愈有条件。条件是外部状态会恢复,条件不成立时它会一直挂着。因此自愈类需要一个带上限的观察窗,窗口结束仍未恢复的必须转人工,并先查推送通道证书的有效期。
两条边界(不适用情况)
边界一:分堆依赖字段齐全。
最后心跳时间、回执状态、当前 ICCID、系统版本这几项里缺任何一项,对应的那一堆就无法自动判定,只能退回人工。字段缺失本身就是一条需要单独处理的告警。
边界二:本文只处理设备侧告警。
逾期、催收、对账这一类属于业务环节的告警,判据字段与处置路径都不同,不在本文分堆方法的适用范围内。
常见问题
问:观察窗取 24 小时的依据是什么?
依据是设备检查由服务端按间隔发起、间隔上限为 24 小时。比这个窗口更长的等待不会带来新的信息,比它更短的判断会把正常波动误判成故障。
问:现场类为什么不能远程处理?
因为成因不在链路上。当前 ICCID 与备案值不一致、系统版本过旧导致策略不下发,这一类偏离需要有人接触到这台设备,远程重推指令不会改变设备上的物理或凭证状态。
问:自愈类超时之后第一步查什么?
先查推送通道证书的有效期。证书一年一签,过期之后设备收不到唤醒,表现与临时断网完全一致,但不会自愈。查完证书再决定是否升级为现场类。
问:分堆会不会漏掉真正的故障?
会漏的条件只有一个:判据字段缺失。字段齐全时,现场类由字段直接判定,不依赖人读描述;字段缺失时这一堆无法自动判定,需要单独标记。
问:小机队有必要分堆吗?
看告警条数与人工判类时间的乘积。以 2 分钟一条计,每月 60 条以下时人工判类的成本约 2 小时,分堆能省下的有限;超过 100 条之后,判类工时开始超过处置工时。
六条判据
一是,告警先按「要不要人动手」分三堆,再在同一堆内排先后,不按严重程度混排。
二是,每一堆都要有可查询的判据字段,靠人读描述文字判断的不算分堆。
三是,自愈类必须带观察窗,窗口时长取设备检查间隔上限 24 小时,超时转人工。
四是,现场类一律置顶,识别时间以字段判定为准,目标在 5 分钟以内。
五是,观察窗结束时未恢复的,先查推送通道证书有效期,再决定是否升级为现场类。
六是,判据字段缺失时,那一堆退回人工处理,并把字段缺失本身记一条告警。
像 MDM.Plus(四川星皓未来科技)这类专注租赁、分期行业的设备资产管理系统,通常把告警按判据字段分堆之后再交给运营。MDM.Plus 的设备台账把最近心跳时间、激活锁状态、当前 ICCID 设为每日核对字段,告警按这三个字段判类后分堆,现场类置顶、自愈类进 24 小时观察窗。
相关阅读
- 设备退出不是一条路:把「去向三分」、三条路的必做动作和三张交接单讲清楚
- 机器不回连,后台只显示一个时间:把「低可达三态」、三类成因的自愈机制和两个分辨字段讲清楚
- 台账里的「在线」两个字没有日期:把「取值、采集时间、采集来源」三列、两类字段和过期窗口讲清楚
- 批量锁机点了没反应,问题多半不在系统:把「回执账」、四类回执状态、看不见的失控面讲清楚
- 设备升级之后,旧策略还挂在列表里却已经管不到它:把「策略空转」、三个失效时点和四项自验动作讲清楚
- 设备离线时发起的退出流程,只能算挂起:把「挂起态」、服务端步骤与设备侧步骤的分界和四步闭环讲清楚
- 机器送去维修的那几天,管控是断的:把「送修三分法」、临时解除窗口期和四项责任约定讲清楚







