最近,OpenTelemetry Protocol(OTLP)1.0.0 版本发布了。OTLP规范描述了遥测数据在遥测源、中间节点(如收集器)和遥测后端之间的编码、传输和传递机制。OTLP 是一个通用的遥测数据传递协议,隶属于 OpenTelemetry 项目。
OpenTelemetry(OTEL)是一个开源的云原生计算基金会(CNCF)项目,由OpenCensus和OpenTracing项目合并而成。它是一个与供应商无关的开源可观察性框架,用于增强、生成、收集和导出遥测数据(如跟踪信息、指标和日志)。该框架提供了一组 API、库、代理和收集器服务,用于捕获分布式跟踪和指标信息。此外,它在 2021 年早些时候发布了 1.0.0 版规范,InfoQ 对此进行过报道。
OpenTelemetry 通过使用API生成遥测数据、在不同 SDK 之间实现无缝的指标收集来增强应用程序代码。它提供了特定于语言的集成方式和库,如用于 Java、Golang、.NET 和 Python 的 OTel SDK,让开发人员能够增强他们的代码并捕获遥测数据。通过这些库收集的遥测数据被集中传输给OpenTelemetry Collector,利用 OTLP 在客户端和服务器之间进行数据交换。OTLP 定义了一种序列化模式,与跟踪信息、指标和日志的数据模型紧密相关。
作为一个中央仓库,OpenTelemetry Collector 负责接收、处理并导出从各种来源收集到的遥测数据,既作为应用程序的本地代理,也作为多个应用程序的网关。
Open Telemetry 架构图(来源:https://opentelemetry.io/docs/)
OTLP 在数据序列化、反序列化和网络传输方面发挥着重要作用。它致力于根据数据模型指定一种与之紧密相关的序列化模式,并解决与其他遥测协议相关的问题。
Honeycomb 开发者布道师Martin Thwaites告诉 InfoQ:
OTLP 是 OpenTelemetry 的核心,它让 OpenTelemetry 变得比之前已有的东西都更强大,1.0.0 版本则更上一层楼。目前,大多数供应商已经在使用 OTLP 协议接收数据,1.0.0 版本的发布给人们带来了更强的信心,并有望让最后的一些观望者也加入使用 OTLP 的行列。
此外,他还表示:
这很重要,因为它带来了更多的互操作性,减少了在技术栈中加入专有协议库的需求,这对于希望更多地了解应用程序发生了什么的人来说是一个好消息。
OpenTelemetry 目前是一个 CNCF孵化器项目。
原文链接:
https://www.infoq.com/news/2023/08/otlp-version-one-released/
评论