Files
silk/docs/operations/slo-and-alerts.md
T

40 lines
1.6 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 可观测性 SLO 与告警阈值
## 日志与请求 ID
- Go 后端每个 HTTP 请求生成或透传 `X-Request-ID`,日志统一记录 `requestId/method/path/query/status/latency/ip/authType`
- 日志不记录 Authorization 原始值;query 中 `token/password/secret/authorization` 类参数统一替换为 `[redacted]`
- AI 服务 `/detect` 同样透传 `X-Request-ID`,便于跨 Go/Python 全链路追踪。
## 依赖指标
`GET /api/v1/ops/metrics``log:read`)返回依赖指标,至少记录请求数、失败数、最近延迟、P50/P95、最近成功/失败时间和最近错误。目标覆盖:
- PostgreSQL
- Redis
- MQTT
- IoTDB
- S3
- AI 服务
- WVP/ZLM
- 微信
- 天气
## 初始告警阈值
| 指标 | 目标 | 告警阈值 | 负责人 |
|---|---|---|---|
| API 可用性 | 99.5% | 5 分钟错误率 >5% | 后端 + 运维 |
| API p95 延迟 | <500ms(业务接口) | 5 分钟 p95 >1s | 后端 |
| 登录失败率 | 正常用户 <2% | 5 分钟失败率 >10% | 后端 + 安全 |
| Redis | 可用 | Ping 失败 3 次 | 运维 |
| PostgreSQL | 可用 | 连接/查询失败 3 次 | 后端 + 运维 |
| IoTDB | 可用或明确降级 | 持续不可用且遥测回退 | 后端 |
| AI 推理失败率 | <1% | 5 分钟失败率 >5% | AI + 后端 |
| Ceph 容量 | 使用率 <80% | 使用率 >80% | 运维 |
| Outbox 积压 | 常态 <50 | pending+retry >200 | 后端 |
## 模拟故障验证
每次发布前至少验证一次通知链:断开 Redis → 确认认证接口返回 503 → 恢复 Redis → 确认自动恢复;如部署告警工具,则同时验证告警通道可送达负责人。