跳转到主要内容
告警引擎(monitedge)在本地暴露一组 Prometheus 指标,覆盖三项会静默停掉监控的故障:与中心的连接断了、规则同步卡住了、规则一直在评估失败。把它们采集到您自己的时序库,就可以在控制台之外持续判断这台引擎是否还在正常工作。 这些指标不在控制台展示,也没有对应的菜单入口,只能从引擎的 /metrics 读取。

采集方式

/metrics 与引擎的 http.listen 是同一个端口,默认 0.0.0.0:6868,不需要认证。用您自己的 Prometheus 或 VictoriaMetrics 直接抓取该地址即可:
Flashduty 不会代为抓取这些指标。控制台的告警引擎状态页展示的是实例清单、心跳与版本,不含这些指标;指标只存在于您自己的时序库中。
不要让被监控的这台引擎评估它自己的指标告警。 引擎进程退出、租约不处于 ACTIVE(例如与中心的心跳中断)时,跑在这台引擎上的规则既不进行评估也发不出事件。引擎是否存活请用中心侧的引擎失联告警兜底;下文这些指标告警适合放在您自己的 Prometheus/Alertmanager 上,或另一个引擎集群上评估。

与中心的连接

以 -alerter.webSocketDisable 启动的引擎不会建立 WebSocket 连接,monit_edge_websocket_connected 恒为 0,connects_total 也不增长。这类实例上不要用 monit_edge_websocket_connected 判断连接健康度;租约相关指标不受该参数影响。

规则同步

引擎默认每 10 秒从中心同步一次规则。

规则评估

失败轮次的 error_type 取值是固定集合,可以直接按它分组做告警:
monit_edge_alert_rule_failing_duration_seconds 涨起来时,对照 monit_edge_alert_rule_scopes{state="failing"} 看范围:同一数据源下大量作用域同时失败,通常是这个数据源不可用;只有个别作用域失败,问题在那条规则的查询或阈值配置上。单条规则的执行状态和错误摘要见控制台的运行详情,说明见规则运行详情。

查询并发与版本

推荐告警

下表按“指标 + 持续条件”给出可以直接复制的规则。多实例部署时请保留 instance 或您自己的实例标签,避免不同实例的同名序列互相覆盖。
实体树告警走另一组指标(monit_edge_entity_alert_*),覆盖实体发现、条件查询和实体事件投递;本文只覆盖普通告警规则。