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

1.6 KiB
Raw Permalink Blame History

可观测性 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/metricslog: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 → 确认自动恢复;如部署告警工具,则同时验证告警通道可送达负责人。