发布版本

发布版本(distribution)是一个OpenTelemetry组件的定制版本,不应与派生版本(fork)混淆。

OpenTelemetry项目由多个组件组成,支持多个信号。OpenTelemetry的参考实现可用于以下项目:

可以从任何参考实现创建一个发布版本。

什么是发布版本?

发布版本(distribution)是OpenTelemetry组件的定制版本,不应与派生版本(fork)混淆。发布版本是对上游OpenTelemetry存储库的封装,带有一些定制内容。发布版本的定制内容可能包括:

  • 为特定后端或供应商提供脚本以便于使用或自定义使用
  • 对于后端、供应商或最终用户而言,对默认设置的更改
  • 可能是特定于供应商或最终用户的额外打包选项
  • 超出OpenTelemetry提供的测试、性能和安全覆盖范围
  • 超出OpenTelemetry提供的附加功能
  • 较OpenTelemetry提供的功能较少

发布版本大致可以分为以下几类:

  • “纯净”: 这些发布版本提供与上游的相同功能,100%兼容。定制内容通常是为了简化使用或打包。这些定制内容可能是特定于后端、供应商或最终用户的。
  • “高级”: 这些发布版本提供与上游相同的功能,以及更多功能。除了在纯净发布版本中找到的定制化外,还会包括其他组件的添加。例如,包括未纳入OpenTelemetry项目的工具库或供应商导出器。
  • “减少”: 这些发布版本提供了从上游减少的功能。例如,删除OpenTelemetry Collector项目中的工具库、接收器、处理器、导出器、扩展等。提供这些发布版本可增加可支持性和安全性考虑。

谁会创建发布版本?

任何人都可以创建发布版本。目前,有几家供应商提供发布版本。此外,如果最终用户希望使用未纳入OpenTelemetry项目的注册表组件, 他们也可以考虑创建一个发布版本。

贡献或发布版本?

在阅读并了解如何创建自己的发布版本之前,首先要问自己,在OpenTelemetry组件上添加的功能是否对每个人都有益,并因此应该包含在参考实现中:

  • 你的"易用性"脚本能否推广使用?
  • 你对默认设置的更改是否对所有人来说都是更好的选择?
  • 你的附加打包选项是否真的是特定的?
  • 你的测试、性能和安全覆盖范围是否也可以适用于参考实现?
  • 你是否与社区商量过你的附加功能可以成为标准的一部分?

创建自己的发布版本

收集器

有一篇关于如何创建自己的发布版本的指南,可以在这篇博文中找到: “构建自己的OpenTelemetry收集器发布版本”

如果你正在构建自己的发布版本,OpenTelemetry收集器构建器可能是一个不错的起点。

特定语言的工具库

有特定语言的可扩展性机制来自定义工具库的功能:

关于发布版本的注意事项

在使用OpenTelemetry项目的标志和名称等资产为您的发布版本时,请确保与OpenTelemetry营销指南-为贡献组织保持一致。

目前,OpenTelemetry项目不对发布版本进行认证。将来,OpenTelemetry可能会像Kubernetes项目一样对发布版本和合作伙伴进行认证。在评估发布版本时,确定使用该版本不会导致供应商锁定。

对于发布版本的任何支持都来自于发布版本的作者,而不是来自于OpenTelemetry的作者。

最后修改 December 10, 2023: translate (a4350d6e)