监控告警指南(Monitoring & Alerting)
文档编号:DOC-OPS-AM-03
版本:V1.0
创建日期:2026-08-11
维护人:听云(WCL) / TL
保密级别:🟢 可公开发布
关联文档:管理员操作手册 README、日常运维 SOP、故障排查、DIP1-OPS 操作手册
一、文档定位
本文件定义听云(WCL)维护的监控告警体系,包括监控指标、告警规则、响应流程、仪表板配置。目标是实现"问题发现 → 告警 → 响应 → 解决"的全链路闭环。
1.1 监控目标
| 目标 |
说明 |
| 可用性 |
服务可用性 ≥ 99.5%(月度 SLA) |
| 性能 |
P99 响应时间 < 2 秒 |
| 容量 |
资源使用率 < 70%(CPU / 内存) |
| 安全 |
异常访问 / 越权尝试 100% 告警 |
| 业务 |
关键业务流程异常 5 分钟内告警 |
1.2 监控分层
业务层 → 用户登录 / 上传 / 推送 / 支付
↓
应用层 → HTTP 5xx / 4xx / 响应时间 / 错误率
↓
中间件 → 数据库连接 / 缓存命中 / 队列积压
↓
基础设施 → CPU / 内存 / 磁盘 / 网络
↓
外部服务 → Cloudflare R2 / WhatsApp / Expo / Sentry
二、监控指标体系
2.1 基础设施层指标
| 指标 |
阈值(告警) |
阈值(严重) |
检查频率 |
| CPU 使用率 |
> 70% 持续 5 分钟 |
> 90% 持续 1 分钟 |
30 秒 |
| 内存使用率 |
> 80% 持续 5 分钟 |
> 95% 持续 1 分钟 |
30 秒 |
| 磁盘使用率 |
> 75% |
> 85% |
5 分钟 |
| 磁盘 I/O |
> 80% 持续 5 分钟 |
> 95% 持续 1 分钟 |
30 秒 |
| 网络入站流量 |
> 80% 带宽持续 5 分钟 |
> 95% 持续 1 分钟 |
30 秒 |
| 网络出站流量 |
> 80% 带宽持续 5 分钟 |
> 95% 持续 1 分钟 |
30 秒 |
2.2 容器层指标
| 指标 |
阈值(告警) |
阈值(严重) |
检查频率 |
| 容器状态 |
非 Up 状态 |
容器退出 |
30 秒 |
| 容器重启次数 |
1 小时内 > 3 次 |
1 小时内 > 5 次 |
1 分钟 |
| 容器 CPU |
> 70% 持续 5 分钟 |
> 90% 持续 1 分钟 |
30 秒 |
| 容器内存 |
> 80% 持续 5 分钟 |
> 95% 持续 1 分钟 |
30 秒 |
2.3 应用层指标
| 指标 |
阈值(告警) |
阈值(严重) |
检查频率 |
| HTTP 5xx 错误率 |
> 1% 持续 5 分钟 |
> 5% 持续 1 分钟 |
30 秒 |
| HTTP 4xx 错误率 |
> 10% 持续 5 分钟 |
> 20% 持续 1 分钟 |
30 秒 |
| P99 响应时间 |
> 2 秒持续 5 分钟 |
> 5 秒持续 1 分钟 |
30 秒 |
| P95 响应时间 |
> 1 秒持续 5 分钟 |
> 3 秒持续 1 分钟 |
30 秒 |
| 请求 QPS |
较均值下降 50% |
较均值下降 80% |
30 秒 |
| 健康检查失败 |
1 次失败 |
3 次连续失败 |
30 秒 |
2.4 数据库层指标
| 指标 |
阈值(告警) |
阈值(严重) |
检查频率 |
| 连接数 |
> max × 70% |
> max × 90% |
1 分钟 |
| 慢查询数(> 1s) |
5 分钟内 > 10 条 |
5 分钟内 > 50 条 |
30 秒 |
| 死锁次数 |
5 分钟内 > 0 次 |
5 分钟内 > 3 次 |
30 秒 |
| 复制延迟(如适用) |
> 5 秒 |
> 30 秒 |
30 秒 |
| 数据库响应时间 |
> 500ms 持续 5 分钟 |
> 2 秒持续 1 分钟 |
30 秒 |
2.5 外部服务指标
| 服务 |
指标 |
阈值(告警) |
检查频率 |
| Cloudflare R2 |
上传成功率 |
< 99% |
1 分钟 |
| Cloudflare R2 |
上传延迟 P99 |
> 3 秒 |
1 分钟 |
| WhatsApp API |
发送成功率 |
< 95% |
1 分钟 |
| WhatsApp API |
发送延迟 P99 |
> 5 秒 |
1 分钟 |
| Expo Push |
推送成功率 |
< 90% |
1 分钟 |
| Sentry |
错误上报延迟 |
> 30 秒 |
1 分钟 |
2.6 业务层指标
| 指标 |
阈值(告警) |
检查频率 |
| 用户登录成功率 |
< 95% |
1 分钟 |
| 文件上传成功率 |
< 99% |
1 分钟 |
| 推送送达率 |
< 90% |
5 分钟 |
| 关键业务流程错误 |
> 0 次 |
实时 |
三、告警分级与响应
3.1 告警级别
| 级别 |
颜色 |
标准 |
响应 SLA |
通知方式 |
| P0 |
🔴 Blocker |
服务完全不可用 |
15 分钟 |
飞书 + 电话 |
| P1 |
🟠 Critical |
严重降级 / 数据风险 |
1 小时 |
飞书 |
| P2 |
🟡 Major |
部分功能异常 |
4 小时 |
飞书 |
| P3 |
🟢 Minor |
性能波动 / 单点告警 |
24 小时 |
邮件 / Issue |
3.2 告警响应流程
监控系统触发告警
↓
告警通道通知听云(WCL)
↓
听云 5 分钟内确认告警
↓
分级处置:
├─ P0:立即飞书告警 TL + 启动 incident-response
├─ P1:1h 内处置 + OWLG 记录 + 通知 TL
├─ P2:4h 内处置 + OWLG 记录
└─ P3:24h 内处置 + OWLG 记录
↓
处置完成 → 验证 → 关闭告警
↓
复盘(P0/P1 必须复盘)→ 更新 incident-response.md
3.3 告警抑制与聚合
为避免告警风暴,配置以下抑制规则:
| 抑制规则 |
说明 |
| 同一指标 5 分钟内只告警 1 次 |
避免重复告警 |
| 父子告警抑制 |
父告警触发时,子告警抑制 |
| 维护窗口抑制 |
部署窗口期间抑制相关告警 |
| 关联告警聚合 |
同一根因的多个告警聚合为 1 条 |
四、仪表板配置
4.1 推荐仪表板
| 仪表板 |
用途 |
使用人 |
| 总览仪表板 |
全服务健康状态 + 关键指标 |
WCL / TL |
| 基础设施仪表板 |
CPU / 内存 / 磁盘 / 网络 |
WCL |
| 应用仪表板 |
HTTP 指标 / 错误率 / 响应时间 |
WCL |
| 数据库仪表板 |
连接数 / 慢查询 / 死锁 |
WCL |
| 外部服务仪表板 |
R2 / WhatsApp / Expo 状态 |
WCL |
| 业务仪表板 |
关键业务流程指标 |
WCL / BO |
| 告警历史仪表板 |
告警趋势 + 处置时长 |
WCL / TL |
4.2 仪表板维护
- 听云每周一评审仪表板有效性
- 新增监控指标同步更新仪表板
- 失效指标及时清理
- 仪表板配置纳入 Git 管理(如适用)
五、告警通道
5.1 通道配置
实际通道配置(如飞书 Webhook URL)由 TL 本地保管,不写入可公开文档。
| 通道 |
用途 |
接收人 |
配置位置 |
| 飞书群机器人 |
P0/P1 告警 |
TL + WCL |
.env.prod.local |
| 邮件 |
P2/P3 告警 |
WCL + TL |
监控系统配置 |
| 电话(如需) |
P0 紧急告警 |
TL |
第三方服务 |
| Issue |
P2/P3 跟踪 |
WCL + WDE |
Git Issue 系统 |
5.2 告警消息模板
【告警级别】P0/P1/P2/P3
【告警名称】<指标名称>
【告警时间】YYYY-MM-DD HH:MM:SS
【告警内容】<详细描述>
【当前值】<数值>
【阈值】<阈值>
【持续时间】<时长>
【影响范围】<服务/子项目>
【处置建议】<参考文档>
【OWLG 编号】待记录
六、监控告警评审
6.1 月度评审
听云每月 1 日评审监控告警体系:
| 评审项 |
输出 |
| 上月告警总数 |
趋势分析 |
| 告警分级分布 |
P0/P1/P2/P3 占比 |
| 告警处置时长 |
平均 / P99 |
| 误告警率 |
< 5% 目标 |
| 漏告警事件 |
复盘 + 补充规则 |
| 指标有效性 |
失效指标清理 |
| 新增监控需求 |
业务变化驱动 |
6.2 告警优化
| 优化方向 |
措施 |
| 减少误告警 |
调整阈值 / 增加持续时间 |
| 减少漏告警 |
补充新指标 / 调低阈值 |
| 加快响应 |
优化通知通道 / 自动化处置 |
| 减少告警风暴 |
配置抑制规则 / 聚合规则 |
七、修订记录
| 版本 |
日期 |
修订人 |
修订内容 |
| V1.0 |
2026-08-11 |
DT |
初始化监控告警指南;定义 6 层监控指标体系(基础设施/容器/应用/数据库/外部服务/业务);定义 P0-P3 四级告警分级与响应 SLA;定义告警抑制/聚合规则与月度评审机制 |
本文件为听云(WCL)监控告警体系的规范。所有告警须按 SLA 响应并记录 OWLG。