仪表化

OpenTelemetry 如何促进仪表

要使系统 可观测,它必须被 仪表:也就是说,系统组件的代码必须发出 信号,例如 跟踪指标日志

使用 OpenTelemetry,您可以通过两种主要方式对代码进行仪表:

  1. 通过官方 大多数语言的 API 和 SDK 进行 基于代码的解决方案
  2. 零代码解决方案

基于代码的解决方案 使您能够从应用程序本身获得更深入的洞察和丰富的遥测数据。它们允许您使用 OpenTelemetry API 从应用程序生成遥测数据,这可以作为零代码解决方案生成的遥测数据的必要补充。

零代码解决方案 非常适合入门,或者当您无法修改需要从中获取遥测数据的应用程序时。它们从您使用的库和/或应用程序运行的环境中提供丰富的遥测数据。另一种思考方式是,它们提供有关您的应用程序 边缘 发生情况的信息。

您可以同时使用这两种解决方案。

OpenTelemetry 的其他优势

OpenTelemetry 不仅仅提供零代码和基于代码的遥测解决方案。以下内容也是 OpenTelemetry 的一部分:

  • 库可以利用 OpenTelemetry API 作为依赖项,这不会影响使用该库的应用程序,除非导入了 OpenTelemetry SDK。
  • 对于您拥有的每个 信号,您有多种方法可以创建、处理和导出它们。
  • 通过内置于实现中的 上下文传播,无论信号在哪里生成,您都可以关联它们。
  • 资源仪表范围 允许按不同实体对信号进行分组,例如 主机操作系统K8s 集群
  • API 和 SDK 的每种特定语言的实现都遵循 OpenTelemetry 规范 的要求和期望。
  • 语义约定 提供了一个通用的命名模式,可用于在代码库和平台之间进行标准化。

零代码

了解如何在无需编写代码的情况下为应用程序添加可观测性

代码方式

了解设置基于代码的仪表过程中的基本步骤

了解如何为您的库添加原生仪表。