2

https://opentracing.io/他们声明 opentracing API 是:

用于分布式跟踪的供应商中立 API 和工具

好的,但是在实际应用程序的上下文中这实际上意味着什么?

这个 Opentracing API 实际上由哪些部分组成,它的目的是什么以及它如何与“zipkin”和“jaeger”等其他日志相关系统交互

  • 是否需要使用Opentracing API for Java 才能声明“我的应用支持”opentracing?

  • 是否有一个 Opentracing 协议(例如通过网络发送数据),或者他们只是说 Opentracing 是一个中间层,它允许多个其他跟踪框架相互操作?尤其是这张图让我这么想。

4

1 回答 1

2

OpenTracing 是您的代码将直接与之交互的 API。

基本上,您的应用程序将使用 OpenTracing API 进行“检测”,而具体的跟踪器(如 Jaeger 或 Brave/Zipkin)将捕获数据并将其发送到某处。这允许您的应用程序在整个代码中使用中性 API,以便您可以从一个提供程序更改为另一个提供程序,而无需更改整个代码库。

另一种思考方式是,OpenTracing 就像 Java 日志世界中的 SLF4J,而 Jaeger 和 Zipkin 是具体的实现,例如 Java 日志世界中的 Log4j。

于 2019-01-23T10:54:00.447 回答