OpenTracing 和 Zipkin 之间的主要区别是什么?

What are keys differences between OpenTracing and Zipkin?

我正在研究分布追踪工具。

发现有两个很受欢迎。

它们之间的主要区别是什么? 你会推荐哪一个? 您会推荐其他开源分布式跟踪工具吗?

获取分布式跟踪的句柄 space 可能有点令人困惑。这是一个快速总结...

开源示踪剂

有许多流行的开源跟踪器,Zipkin 就在其中:

  • Zipkin
  • 耶格
  • 干草堆

商业示踪剂

还有许多供应商提供商业 monitoring/observability 工具,这些工具要么以分布式跟踪为中心,要么包括分布式跟踪:

  • 应用动态
  • AWS X-Ray
  • Azure 应用洞察
  • 数据狗
  • Dynatrace
  • Google云迹
  • 蜂巢
  • 光步
  • 新遗迹
  • 信号外汇
  • (可能还有 100 个...)

标准化工作

除了所有这些产品之外,还有许多围绕分布式跟踪创建标准的尝试。这些通常从为架构的 trace-recording 侧创建标准 API 开始,有时扩展为对跟踪内容甚至连线格式的规定。这就是 OpenTracing 的用武之地。所以它本身不是一个跟踪解决方案,而是一个 API 可以由多个跟踪器的跟踪记录 SDK 实现,让您更轻松地在供应商之间切换。最常见的标准是:

  • OpenTracing
  • OpenCensus
  • OpenTelemetry

请注意,列表中的前两个已被放弃,他们的贡献者联手创建了第三个。[1]

[1] https://opensource.googleblog.com/2019/05/opentelemetry-merger-of-opencensus-and.html