使用 OpenTelemetry 构建可观测性 06 - 生态系统

Thomas Stringer 2023年8月16日

过去的五篇文章讨论了如何使用 OpenTelemetry 来构建可观测性的技术细节。我认为在本博文系列的结尾介绍有关 OTel 生态系统的信息,为读者提供更全面的了解非常重要。OpenTelemetry 的发展非常迅速,对于刚接触它的人来说,可能会感到有些不知所措或困惑,不知道在哪里找到有效的信息或资源。

OpenTelemetry 是一个 CNCF 项目。但是,在 CNCF 项目中 OpenTelemetry 的表现如何?以拉取请求、问题和提交代码的数量来衡量,OpenTelemetry 是第二活跃的 CNCF 项目,仅次于 Kubernetes:

20230815230656

数据源(X Corp)

OpenTelemetry 的未来发展前景广阔,充满希望。我相信它将在云原生领域中扮演重要角色,并且将持续发展下去。

项目官网

要了解和学习使用 OpenTelemetry 首推的是项目官网:opentelemetry.io。那里有丰富的信息和指南,可以帮助你快速入门并在你的软件中应用 OpenTelemetry 。

OpenTelemetry 的项目博客也是值得关注的部分。在那里你会找到很多更新和公告。

通常来说,如果你对 OpenTelemetry 还不熟悉,我强烈建议你花些时间浏览一下项目官网。

社区

OTel 拥有众多的功能集。而随着这些功能的增加,通常也伴随着一定程度的复杂性。在某些时候,你可能需要社区的帮助。

我发现与社区成员(包括维护者!)聊天的最佳方式是通过 CNCF Slack 工作空间。 OpenTelemetry 最主要的频道是  #opentelemetry ,这是一般性讨论。也有一些特定话题或语言版本的频道:

  • #otel-collector - 所有的有关 OpenTelemetry Collector
  • #otel-go - OpenTelemetry Go (API, SDK, implementation)
  • #otel-python - OpenTelemetry Python (API, SDK, implementation)

还有更多!在 Slack 中搜索关键字 ‘#otel’ 看看其他 OpenTelemetry 频道。

在 OpenTelemetry 的社区频道中,你可以找到很多有价值的信息,比如项目的治理、感兴趣的领域、会议和项目排期时间表等等。如果你有兴趣参与 OpenTelemetry 项目,这个社区仓库是一个很好的起点,帮助你更好地了解和参与进来。

项目仓库

我不得不承认,当我开始使用 OpenTelemetry 时,对我来说更令人困惑的事情之一是GitHub项目仓库的组织方式。 OpenTelemetry的主要组件(不是特定于语言或收集器)可以在以下项目仓库中找到:

OTel 收集器项目仓库包括:

此外,针对特定编程语言的埋点库是 OpenTelemetry 的一个重要组成部分。以下是一些项目仓库:

有些编程语言的仓库可能不同。例如,Java 语言实现的主要仓库是 open-telemetry/opentelemetry-java , open-telemetry/opentelemetry-java-contrib 用于扩展,对于埋点有一个单独的仓库 open-telemetry/opentelemetry-java-instrumentation

注册表

OpenTelemetry 生态系统中的最后一个重要组成部分是 OpenTelemetry 注册表。由于项目中存在着各种实现和产品组合,用户可以在一个地方浏览和搜索可用的实现和产品。他们可以根据自己的需求和偏好,选择最适合他们的解决方案。

总结

OpenTelemetry 是一个非常优秀的项目,它为我们开发的软件抽象出一套实现可观测性的方案。通过使用 OTel ,我们能够获得最大化的可观测能力,而无需进行任何代码更改就能发现潜在的问题。

我强烈推荐您深入了解 OpenTelemetry 项目!一旦您开始使用,您将会爱不释手!

本文翻译自:https://trstringer.com/otel-part6-ecosystem/

扩展阅读:

开源版
Flashcat
Flashduty