2026/06/17

可观测性是什么意思:系统出问题时为什么要看得见

可观测性是什么意思:系统出问题时为什么要看得见

摘要

可观测性是指系统运行后,外部能通过日志、指标、追踪和状态记录理解内部发生了什么。它不是给系统加几个图表,而是在问题出现时,能快速判断哪里出错、影响多大、原因可能是什么、应该如何恢复。

没有可观测性就只能猜

系统正常时,很多问题看不出来。

页面能打开,接口能返回,任务能运行,发布能成功。可一旦出错,如果没有日志、指标和状态记录,维护者就只能猜。

猜测会消耗时间,也会增加风险。

你不知道是认证失败、网络问题、接口限流、数据格式错误,还是本地状态没有同步。每种原因都可能对应不同处理方式。

可观测性的价值,是让排查从猜测变成证据驱动。

日志记录发生了什么

日志是可观测性的基础。

它应该记录关键事件:什么时候开始,调用了什么,成功还是失败,失败原因是什么,相关 ID 是什么。

好的日志不是越多越好。

如果日志充满无意义信息,真正出事时反而更难找。关键是记录能帮助恢复和判断的信息。

比如发布系统里,文章 slug、目标博客、远端 post id、返回 URL、错误状态,都比一堆泛泛的“开始处理”更有价值。

日志应该服务问题定位,而不是制造噪音。

指标反映整体状态

日志关注事件,指标关注趋势。

比如请求成功率、接口延迟、错误数量、任务积压、发布失败次数、重试次数。

指标能帮助你发现系统是否正在变差。

单次失败可以靠日志查,持续变慢或错误率上升,就需要指标看整体。

好的指标要能回答:系统现在健康吗?问题是偶发还是持续?影响范围是在扩大还是缩小?

没有指标,很多问题要等用户抱怨才知道。

追踪连接一次完整请求

复杂系统里,一个操作可能经过多个环节。

用户点击发布,系统要读取文件、渲染 Markdown、调用 Blogger API、回写 front matter、同步 registry。

如果中间某一步失败,只看单点日志可能不够。

追踪的作用,是把一次完整流程串起来。

它让你知道一个请求经过了哪些步骤,每一步花了多久,在哪一步出错。

对小系统来说,不一定要上复杂平台,但至少要有能串起流程的 ID 和状态记录。

可观测性也包括业务状态

很多人以为可观测性只是工程指标。

其实业务状态也很重要。

一篇文章现在是 draft、published,还是远端已发布但本地 registry 没同步?一个任务现在归谁?最后一次同步是什么时候?

这些状态不清楚时,系统就会出现“看起来成功,其实没闭环”的问题。

可观测性要让技术状态和业务状态都可见。

这样维护者才能判断:系统是否真的完成了用户关心的事情。

不要等出事才补

可观测性最好在系统设计时就考虑。

等事故发生后再补日志,往往已经错过最关键的信息。

可以在每个关键流程里提前问:

  • 如果这里失败,我需要知道什么?
  • 谁会受到影响?
  • 有没有可恢复的状态记录?
  • 错误信息能不能让人看懂?

这些问题会让系统更可靠。

结论

可观测性是什么意思?它是系统出问题时还能被理解的能力。

日志告诉你发生了什么,指标告诉你整体是否健康,追踪告诉你流程在哪里断,业务状态告诉你结果是否闭环。

一个可观测的系统,不一定永远不出错,但出错时更容易恢复。

延伸阅读

没有评论:

发表评论

服务设计是什么意思:体验不是一个界面,而是一整段旅程

服务设计是什么意思:体验不是一个界面,而是一整段旅程 摘要 服务设计关注的不是单个页面、按钮或流程,而是用户从产生需求到完成任务的整段体验。一次服务可能包含线上界面、线下接触、客服沟通、等待、通知、付款、售后和失败处理。理解服务设计,能帮助我们从“把功能做出来”转向“让人在真...