监控体系(Observability / Reliability Platform)
目标:看到异常” → “定位问题” → “持续可靠性治理
P0(可观测基础)
├── Metrics(Prometheus)
├── Logging(ELK / Loki)
├── Tracing(Jaeger / Zipkin)
├── Error Tracking(Sentry)
P1(定位与响应)
├── 秒级大盘(Grafana)
├── 告警平台
├── 事件中心(Incident)
P2(可靠性治理)
├── SLA / SLO 评估平台
├── StatusPage
├── 变更 / 发布关联分析
P3(智能化)
├── RCA 根因分析系统
├── 拓扑感知 / 依赖图
├── 智能异常检测(AIOps)
看见信号 → 定位问题 → 控制影响 → 复盘改进 → 可靠性提升
秒级大盘(Real-Time / Second-Level Dashboard)
下面我把 “秒级大盘(Real-Time / Second-Level Dashboard)” 当成一个独立的工程能力来系统拆解,而不是“Grafana 上多拖几个图”。
重点会放在: 它解决什么问题、为什么“秒级”有意义、架构与数据模型、展示设计、性能与治理,以及它在稳定性体系中的真实位置。
一、先定性:什么是“秒级大盘”
一句话定义:
秒级大盘是面向“运行态决策”的实时态势感知系统,而不是事后分析工具。
关键词:
- 秒级刷新(1–5s)
- 强聚合、低维度
- 低延迟、强稳定
- 面向 Oncall / 指挥 / 值班室
和常规监控大盘的本质区别
| 维度 | 常规监控大盘 | 秒级大盘 |
|---|---|---|
| 刷新频率 | 30s / 1min | 1–5s |
| 使用场景 | 日常观察 | 故障态 |
| 指标数量 | 多 | 极少 |
| 维度 | 丰富 | 强收敛 |
| 操作人 | 工程师 | 值班 / 指挥 |
👉 秒级大盘不是“更细”,而是“更狠”。
二、为什么一定要“秒级”
1️⃣ 故障扩散速度已是秒级
- 自动扩容 / 自动缩容
- 熔断 / 降级
- 重试风暴
- MQ 积压
👉 分钟级大盘,人还没看到,系统已经自杀了。
2️⃣ 指挥场景只关心“现在”
在事故中,关键问题只有三个:
- 现在是不是在恶化?
- 哪个系统在拖垮全局?
- 采取动作有没有效果?
这些都需要秒级反馈。
三、秒级大盘的指标设计(核心)
1️⃣ 极简原则(必须守住)
一个屏幕 ≤ 10 个指标
推荐分区:
[ 全局健康 ]
[ 关键链路 ]
[ 核心资源 ]
[ 错误 & 饱和 ]
2️⃣ 必选指标类型
(1)全局黄金指标(Top Priority)
- 总 QPS
- 错误率
- P99 延迟
(2)关键链路
- 下单 RT
- 支付成功率
- 核心 API 错误
(3)系统饱和度
- CPU Saturation
- Thread Pool Queue
- MQ Lag
(4)异常信号
- 新 Error Issue
- Error Budget Burn Rate
3️⃣ 明确:哪些指标 不该进秒级大盘
❌ 单实例指标 ❌ 高维标签 ❌ 历史对比 ❌ 排查型指标
四、数据架构(秒级 ≠ 全量)
1️⃣ 秒级大盘的数据特性
| 特性 | 要求 |
|---|---|
| 延迟 | < 1–2s |
| 稳定性 | 高于业务 |
| 精度 | 可接受近似 |
| 成本 | 可控 |
👉 准确性 < 稳定性 < 低延迟
2️⃣ 推荐数据链路(企业级)
Metrics Source
↓
实时聚合 / Rollup
↓
内存缓存 / TSDB
↓
WebSocket / SSE
↓
大盘前端
3️⃣ 技术选型(不局限 Grafana)
数据源层
- Prometheus + Remote Write
- VictoriaMetrics
- M3
- 云厂商实时指标
实时聚合层(关键)
- Flink / Spark Streaming
- 自研聚合服务
- ClickHouse Materialized View
缓存 / 查询
- Redis / Memcached
- 高频窗口 TSDB
推送层
- WebSocket
- SSE
- gRPC Stream
五、前端展示设计(比你想的重要)
1️⃣ 大屏设计原则(值班室标准)
- 深色背景
- 高对比颜色
- 大字号
- 动画极简
2️⃣ 组件类型(不是随便选)
| 组件 | 用途 |
|---|---|
| Big Number | 当前状态 |
| Sparkline | 变化趋势 |
| Gauge | 饱和度 |
| Status Light | 健康状态 |
3️⃣ 颜色语义必须统一
- 绿:稳定
- 黄:退化
- 红:失效
禁止自定义颜色表达语义。
六、刷新与交互模型
1️⃣ 推 vs 拉
| 模式 | 适合 |
|---|---|
| Pull | 常规大盘 |
| Push | 秒级大盘 |
👉 秒级 必须推送。
2️⃣ 人机交互设计
- 默认不可配置
- 一键切换环境
- 点击跳转排障大盘
七、稳定性与降级(经常被忽略)
秒级大盘自己必须“永不宕机”。
1️⃣ 降级策略
- 自动降低刷新频率
- 数据缺失标记
- 静态兜底指标
2️⃣ 读写隔离
- 绝不直连主 TSDB
- 独立查询路径
八、与 Reliability / SRE 的关系
1️⃣ 事故指挥中枢
- 决策依据
- 行动验证
2️⃣ Error Budget 可视化
- 实时燃烧速率
- 是否触发冻结
3️⃣ 自愈反馈闭环
- 动作 → 秒级反馈 → 决策
九、治理能力(否则一定崩)
1️⃣ 指标白名单
- 明确哪些能进秒级大盘
2️⃣ 变更审批
- 谁能改大盘
3️⃣ 使用审计
- 谁在事故中看了什么
十、成熟度模型(秒级大盘)
| 阶段 | 特征 |
|---|---|
| L1 | 分钟级监控 |
| L2 | 秒级刷新 |
| L3 | 指挥态视图 |
| L4 | SLO 驱动 |
| L5 | 自动决策联动 |
