OTel 很糟糕(但也非常棒!)

OpenTelemetry (OTel) 常被誉为可观测性的未来,承诺供应商中立和全面的数据收集。但对于那些每天使用它的人来说,现实情况如何?我们与几位工程师和 SRE 进行了交谈,听取了他们对 OTel 的坦率看法。结果呢?一场关于使用 OTel 的好、坏以及有时令人沮丧的方面的坦诚对话。

为了准备 KubeCon 的演讲 OTel Sucks (But Also Rocks!),Juraci 与社区成员进行了交流,并收集了大量宝贵的见解。由于时间限制,并非所有材料都能包含在演示文稿中,因此本文旨在尽可能地体现社区的贡献。

OTel 存在不足之处

在他们对 OTel 的坦率看法中,工程师和 SRE 分享了他们面临的常见挑战。来自 Delivery Hero 的 Elena 强调“没有稳定的 collector 版本”和“快速的变化节奏”是主要的痛点。这些频繁的更新需要进行繁琐的检查和测试,以维持生产稳定性。

来自 Atlassian 的 James 和来自 Pismo 的 Alexandre 对语义约定更改引起的不满表示沮丧。这些更改可能会破坏现有的仪表板,并需要大量工作来更新大型系统中的仪表。Alexandre 特别提到让整个公司更改开发人员不喜欢的属性的难度。

来自 Liatrio 的 Adriel 指出“仪表化很难”,并且由于信息量大和选择多,入门可能会让人不知所措。他还提到了让人们克服手动仪表化的最初障碍的挑战。James 还讨论了 Java 代理的“魔力”,尽管它功能强大,但有时会导致难以调试的意外问题。

所有受访者都同意 OTel 具有学习曲线,尤其是在理解 collector、配置和语义约定方面。Adriel 指出“我花了大量的概念开销才理解它。”Alexandre 还提到,尽管文档有所改进,但仍可以提供更多示例。

OTel 为何如此出色

尽管存在挑战,我们的受访者也承认 OTel 的显著优势。

例如,来自 Pismo 的 Alexandre 强调了供应商中立的重要性。OTel 允许他们整合所有数据,并切换到任何他们想要的供应商,而不被锁定在特定的生态系统中。

来自 Atlassian 的 James 称赞 OTel 的模块化设计,允许用户在某个部分不起作用时替换它。这种灵活性对于需要自定义设置的重度用户来说尤其重要。

来自 Delivery Hero 的 Elena 分享了她从日志迁移到使用 OTel 进行分布式跟踪的变革性经历。她将回到日志的体验描述为“低效”。James 还强调了 Java 代理如何为单体应用程序提供“前所未有的图像”。

Adriel,他深入参与 OTel 社区,强调了开源的价值和贡献的能力。他指出,“一旦你让人们克服了困难并首次上手,之后就会像微风一样轻松,而且它非常强大。”

来自 Pismo 的 Alexandre 分享了一个令人信服的故事,说明实施 OTel 的尾部采样如何极大地降低了他们的可观测性成本。他们能够优化资源分配,避免过度扩展他们的 collector。

最后,Alexandre 强调了 OTel 在其可观测性实践中实现标准化的作用。在 OTel 之前,他们使用了各种特定于供应商的库和内部 collector,导致不一致和跟踪中断。OTel 提供了一个“单一库、单一标准”,极大地提高了数据质量。

这是关于社区的!

OpenTelemetry 社区受到其成员的高度评价,Adriel Perkins 将其描述为他首次积极参与开源的经历,这主要归功于与人们愉快的互动。他强调有很多聪明、善良且乐于助人的人,他们总是愿意提供指导。社区成员还以他们的经验而闻名,Adriel 认为这有助于他个人工程师的成长。此外,该社区的特点是超级乐于助人、充满热情且对项目未来感到兴奋。虽然成员有时可能直言不讳,但他们通常都和蔼可亲。

James Moessis 还指出,贡献者可以期望他们的代码得到社区内专门人员的代码审查,并且开发人员愿意接受贡献。贡献者体验调查的存在表明了社区对理解和改进贡献者体验的承诺。总而言之,该社区营造了一个支持性和协作性的环境,成员可以在其中学习和成长。

结论

我们的采访揭示了与 OTel 复杂的 MOC。它不是一个完美的解决方案,并且伴随着大量的挑战。然而,对于那些愿意应对复杂性的人来说,OTel 提供了强大的功能和显著的优势。正如来自 Atlassian 的 James 所说,“当 OTel 确实很糟糕时,好处在于它的设计方式并不糟糕,这样你就可以在这里或那里替换小的模块化部分。”

最终,OTel 的价值在于其灵活性、供应商中立性以及它对复杂系统提供的深入洞察。尽管存在成长的烦恼和需要改进的领域,OTel 无疑是可观测性的强大工具。

我们要感谢 Elena Kovalenko、James Moessis、Adriel Perkins 和 Alexandre Magno 分享他们对 OpenTelemetry 的诚实而富有见地的经历。他们的故事为任何考虑或目前使用 OTel 的人提供了宝贵的视角。