发布版本
发布版本(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)