OpenTelemetry度量指标发布候选版

OpenTelemetry的度量功能现已作为候选版发布,首先发布了Java、.NET和Python版本!这意味着规范、API、SDK和其他与度量相关的组件现在具备了完整的OpenTelemetry度量功能,并且可以开始使用了。这些候选版将在接下来的几周内升级为正式版本。

1.0版本的度量发布包括以下内容:

  • OpenTelemetry特定于语言的API中包含的度量功能,提供特定于语言的接口,用于创建和操作度量,并将元数据和属性关联到每个度量上。这对以下人员非常有用:
    • 分发给最终用户的共享库的开发人员,以便这些最终用户可以原生地使用OpenTelemetry来捕获这些库的度量。例如,gRPC使用这些API为给定服务上的每个RPC方法生成延迟、吞吐量和错误率度量。
    • 创建和维护Web服务或客户端应用程序的开发人员,以便他们可以生成自定义度量或与现有度量进行交互。例如,电子商务公司可以使用该API跟踪随时间的购买数量。
  • Java、.NET、Python和JS(下周推出)的OpenTelemetry SDK中包含的度量功能,从API中捕获度量并执行一定程度的处理。其他语言的度量支持仍在开发中。这对以下人员非常有用:
    • 作为其他组织使用的应用程序(如数据库、消息队列等)的开发人员,他们将通过OTLP(或Prometheus)公开度量,以便其终端用户能够监视这些应用程序的性能。这些应用程序可以是开源的或闭源的。
    • 技术组织中的应用程序开发人员,想要捕获由他们的应用程序内部的OpenTelemetry API生成的度量,无论是他们自己的开发人员还是他们的应用程序依赖的共享库生成的度量。这些度量可以通过OTLP或通过任何其他OpenTelemetry导出器导出。
  • 该收集器对度量的支持包括收集器从丰富的数据源(例如主机度量或预打包的应用程序)捕获度量的功能。收集器还提供接收使用多种数据协议(例如本机OpenTelemetry协议(OTLP)和符合OpenMetrics规范的协议,如Prometheus)的数据源的度量的能力。此外,它还支持基于配置的度量处理,以及本机的OTLP、Prometheus和自定义导出器,以将观测度量发送到您选择的云上或本地监控系统。这一功能集对以下人员非常有用:
    • 任何希望从宿主机(Linux VM、Windows VM、Kubernetes等)或预打包的应用程序(数据库、消息队列等)捕获度量的人。
    • 任何希望从现有源(如OpenTelemetry SDK、预打包的应用程序等)、Prometheus或其他源捕获度量的人。
    • 任何希望处理/修改从这些源捕获的度量和度量元数据的人。
    • 任何希望将一种格式的度量转换为另一种格式的人。例如,收集器可以从OTLP和Prometheus源捕获度量,然后使用OTLP(具有标准OpenTelemetry语义约定)、Prometheus或任何其他导出器将所有这些度量发送到单个目标。
  • 完全支持OpenTelemetry协议(OTLP),用于高效序列化和传输系统之间的度量。
  • 规范的度量部分,定义不同类型的度量、它们的形式、如何处理它们以及语义约定。这主要供OpenTelemetry的贡献者使用,同时也为编写度量或元数据的OpenTelemetry用户提供指导。

所有这些功能都是作为对OpenTelemetry现有追踪支持的补充,并且两种信号类型共享相同的元数据和语义约定。截至本公告,以下语言已发行度量候选版:

  • Java
  • .NET
  • Python

JS的候选版计划于下周发布,更多语言将在未来几个月发行度量候选版。在我们收到用户反馈后,每个发布都将进一步升级为正式版本。

入门指南

如果您已经在使用OpenTelemetry的API、SDK、语言代理和Collector的混合版本,那么可以通过将OpenTelemetry的工件更新到最新版本来访问候选版度量功能。我们目前正在为每个工件的度量功能更新官方OpenTelemetry文档。每个工件对应的GitHub存储库还会添加示例和补充文档。

OpenTelemetry的下一步

当我们在2019年的KubeCon EU上宣布OpenTelemetry时,分布式跟踪和度量是其核心承诺的两个方面。随着度量的正式发布,我们已经实现了最初的目标,因此我们可以将重点转向进一步提升每个组件的稳健性和易用性、OpenTelemetry可以从哪些数据源(通过OpenTelemetry API、OTLP或其他方式)捕获遥测、以及新的功能和信号类型。

日志是即将发布的最显著功能,我们正在全速推进此工作。在今年的过程中,您将会听到我们在日志方面的进展情况(日志已经具备稳定的数据模型和OTLP支持),对这个领域感兴趣的任何人都可以参加每周的日志SIG会议。除了日志之外,重要的新项目包括规范化和实施客户端仪表化以及对eBPF的研究。在度量完成后,我们也可以将注意力转向更多的信号类型。