• 主题
  • 什么是 OpenTelemetry?

什么是 OpenTelemetry?

作为开发者、IT 运维人员、DevOps 工程师或 SRE(站点可靠性工程师),您负责自己所构建或运维的应用的性能和运行状况。您用于确定应用是否正常并按预期执行的信息称为遥测数据。虽然技术提供程序已创建了代理来收集遥测数据,但使用这些代理可以帮助您关联这些提供程序。OpenTelemetry 为遥测数据创建一个开放的标准,并利用该技术从云原生应用收集和导出数据,以便对其进行监控和分析。

了解 OpenTelemetry 如何与 Google Cloud 的运维套件搭配使用,以监控和分析在 Google Cloud 上运行的云原生应用和基础架构。

OpenTelemetry 概览

OpenTelemetry 提供了一组开源标准和一组技术,用于捕获和导出云原生应用和基础架构中的指标、跟踪记录和日志(将来)。

现代的云原生应用采用分布式方式,这使得遥测数据的捕获和导出变得很复杂。 OpenTelemetry 的整套标准和技术工具可让您更轻松地捕获数据并将其导出到参与技术供应商或开源项目中。

OpenTelemetry 有哪些好处?

获取有关云原生应用的相关数据

OpenTelemetry 提供了一组特定于语言的 API。它们用于捕获您的应用中已存在的 Web 框架、存储客户端、RPC 系统等数据。它们可用于创建自定义指标、跟踪 span 和日志(即将推出)。

简化遥测数据管理和导出

使用收集器可以聚合、管理和导出 SDK、Prometheus 客户端、Zipkin 或 Jaeger 客户端捕获的遥测、StatsD 等 API,以及 Linux 和 Windows 虚拟机中的系统指标。

一组标准

OpenTelemetry 是两个开源项目(OpenCensus 和 OpenTracing)的合并结果,这两个开源项目具有不同的标准,迫使用户选择生态系统。OpenTelemetry 创建了一组标准,以便您可以使用更多供应商和项目。

通过分布式系统优化应用性能

OpenTelemetry 的软件开发套件 (SDK) 使用这些 API 自动收集请求延迟时间和吞吐量指标,传播分布式跟踪记录,并将捕获的数据导出至 Google Cloud 的运维套件、收集器或您使用的任何其他 APM 工具。

OpenTelemetry 的作用是什么?

OpenTelemetry 可用于解决在分布式系统上运行云原生应用的组织所遇到的常见问题。

监控微服务应用的运行状况

捕获分布式系统中应用的指标和跟踪记录。此数据可帮助您了解您的应用是否按设计运行。

将资源用量归因于不同的用户组

OpenTelemetry 可帮助您捕获微服务之间的请求,以便跟踪发起系统共享群组的资源用量。

在共享资源之间创建优先请求

在您的应用中创建分层请求,确保当有竞争请求到达共享资源时,可以优先处理它们。

捕获的跟踪记录、指标和日志(即将推出)可发送到 Google Cloud 的运维套件产品(例如 Cloud MonitoringCloud Trace)、开源工具(例如 Prometheus),或者后端(例如 SplunkNew RelicDynatraceLightstepDatadog 等等)。您可以同时导出到任意数量的目的地。

此外,Google Cloud 的客户端(包括 Cloud Spanner 客户端库)原生与 OpenTelemetry 集成,可为客户提供一流的管理体验。