PROJECT / 工程实践

可观测与告警栈

让指标、看板和通知成为可维护的工程资产。

项目目标

多个服务与集群并存时,需要从指标进入问题,再把可执行的告警送达协作渠道。本项目维护 Prometheus、Grafana 和告警通知链路,将看板目录通过脚本推送,并为告警设置同维度抑制规则,减少重复通知对排障的干扰。

组件与架构

指标侧采用 Prometheus,展示侧采用 Grafana,通知由 Go webhook 机器人连接飞书。Loki 与 Alloy 已接入,但现有证据未支持“日志全栈长期稳定”的更强结论;本页因此将日志接入状态与指标、告警验收分开表述。

可观测与告警分支服务指标进入 Prometheus 与规则;指标展示分支连接 Grafana,告警分支经过 Alertmanager 与 Go webhook 到达飞书。Grafana 不处于告警通知链路中。脱敏逻辑图 · 可观测与告警分支服务指标Prometheus采集与规则计算Grafana 看板指标展示Alertmanager告警路由与抑制Go webhook → 飞书通知与巡检卡片仅表达功能职责 · 不含内部地址与私有部署细节
脱敏逻辑图:仅展示已记录的功能关系,不代表客户私有部署或当前运行状态。

关键流程

服务指标进入采集任务,规则用于告警与 recording 计算,Grafana 呈现服务状态。告警送达通知链路时,critical 抑制同维度 warning;统一巡检卡片按已记录的每日 02:00 计划投递。看板变更通过脚本推送,无需重启服务。

工程取舍

可观测覆盖量不等于故障发现质量,看板数量和告警规则数仅表达配置规模。维护时需要同时区分配置存在、采集健康与用户实际收到通知三个层次;对未留存最终验收的部分明确保留边界,而不以“已接入”代替稳定性证明。

成果与证据口径

2026-09-09 修订记录为 29 个看板、610 个面板、41 个 scrape job,以及 69 条告警和 57 条 recording 规则。此前 2026-08-24 留档为 49/49 targets UP、116/116 规则 health=ok;日期和统计口径不同,不将两组记录混作同一次实时检查。