排障时最常见的问题不是没有数据,而是无法把数据关联起来。统一的请求 ID、服务名、环境和错误码,是建立关联的第一步。

三类信号

  • 指标回答问题有多大,例如错误率、吞吐和延迟分位数。
  • 链路追踪指出时间花在哪里,以及故障经过哪些服务传播。
  • 日志保留关键上下文,用于解释具体分支和异常。

日志应结构化输出,避免把重要字段埋在自由文本中。敏感信息不能进入日志,重复异常也需要采样或聚合,防止故障时日志系统先被打满。

告警应该对应用户可感知的问题或即将耗尽的容量。每条告警都应有负责人、判断条件和处置手册。没人行动的告警最终只会训练团队忽略声音。