OpenTelemetry:开启可观测性新纪元
1. 开放标准的力量
在软件遥测领域,仅仅提供一套用于检测和传输遥测数据的 API 和协议,并不能直接产生高质量的数据。如果每个 HTTP 客户端库的作者对指标(如请求持续时间)采用不同的命名或标签,或者使用特定于库的标头来传播标识当前事务的信息,那么构建用于自动关联信号并提供丰富调试上下文的工具将变得几乎无法维护。多年来,我们一直处于这样的困境中,导致指标、跟踪和日志相互脱节。
标准在我们的生活中至关重要,以国际单位制(SI)为例,它使得不同国家的研究团队能够轻松协作。尽管语言不同,但大家对秒、米等单位的理解是一致的,能够基于这些标准讨论速度、加速度等概念。技术依赖这些标准,用户能够轻松理解和使用。然而,软件遥测中的标准情况却不容乐观,同一组织内的团队在事件响应期间也可能出现沟通不畅的问题,工程师需要手动查找不同指标或日志之间的关联,这大大增加了识别和解决根本原因的时间。
OpenTelemetry 提供了一套标准的命名约定、协议以及信号和上下文传播格式,带来了以下好处:
- 开发者在检测应用程序时拥有明确的契约,知道大多数框架和供应商都支持遥测。
- 客户端和服务器可以使用普遍支持的规范相互传播遥测上下文。
- 应用程序所有者可以以最小的认知负担调试复杂的分布式系统,减少事件响应期间的误解。
- 可观测性供应商和开源遥测平台可以基于相同的开放标准提供自动分析工具,便于调试。
下面通过一个支付服务回归的示例,展示使用开放标准的调试工作流程:
1. 支付服务工程师收到关于 http.server.duration 指标回归的警报,该指
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



