TIL-可观测性工具的成本盲区
跟上一篇 《把成本当作 SLI》 同一个作者。David Iyanu Jonathan 在 DZone 上发了《The Cost of Knowing: When Observability Becomes the Outage》,这次说的问题是:你花钱买监控工具盯系统,但没人盯监控工具自己花了多少钱。
监控工具不会告诉你它自己花了多少钱
日志收集器产生的日志,不会出现在日志收集器的仪表盘上。指标系统的运行开销,不会自动变成指标系统里的一条指标。你不可能"不小心就发现"监控工具花了基础设施预算的 12%,得有人主动去查,得有人先在意这件事。
这就是可观测性成本总被忽视的根因:数据有,但不在你平时看的地方。
出错的全记,正常的可以丢
采样是砍监控成本最狠的一刀,但团队不敢用,怕漏掉重要数据。有个聪明的做法叫 tail-based sampling:等请求跑完了再看结果,再决定记不记。报错的、响应慢的,全量记下来。那些正常的 200-OK、12 毫秒就返回的请求,直接丢掉。Jaeger、Zipkin、AWS X-Ray 都内置了这个能力。
你真正会去查的数据一条没少,账单能砍掉 90% 以上。
监控花费该有个上限
SRE 圈子里天天聊可用性、延迟、错误率的 SLO,但几乎没人给监控花费定一个占基础设施的比例上限。原文给的参考:创业公司可以到 20%,成熟组织应该控制在 10% 以内。超过 30%,说明你看系统的钱比跑系统的钱还多。
做法不复杂:把云厂商账单 API 的数据接进 Prometheus,算 监控花费 / 基础设施总花费 ,做一个让财务和运维一起看的仪表盘。