OpenTracing 异步应用程序的跟踪与监控
1. OpenTracing 概述
OpenTracing 项目的主要目标是提供一个 API,用于为其他开源项目和框架创建开源的跟踪工具。在 Tracing Talk 应用程序中,我们大量依赖于为 Kafka、Redis 和 Spring 框架提供的开源跟踪工具,代码中手动跟踪的部分很少,这主要是由于相关跟踪库的相对不成熟,而非根本性的限制。
2. Spring 跟踪工具的使用
要在 Spring 组件中自动启用跟踪工具,可使用 opentracing-spring-cloud-starter
库,前提是 Spring 容器中有一个 io.opentracing.Tracer
类型的 bean。添加以下依赖:
<dependency>
<groupId>io.opentracing.contrib</groupId>
<artifactId>opentracing-spring-cloud-starter</artifactId>
<version>0.1.13</version>
</dependency>
3. 跟踪器解析器
跟踪器解析器(Tracer resolver)是一个支持使用 Java 的 Service Loader 机制从类路径实例化跟踪器的库。为了在 Spring 容器中使用跟踪器,添加以下依赖