【发布时间】:2018-11-15 15:37:37
【问题描述】:
我们正在尝试对 Webflux 进行响应式处理。我们将 Jaegar 与 Istio 一起用于检测目的。
Jaegar 非常了解 Spring MVC 端点,但似乎根本不适用于 WebFlux。
我正在寻找使我的 webflux 端点出现在 Jaeger 中的建议。
提前致谢。
【问题讨论】:
标签: spring-webflux istio opentracing jaeger
我们正在尝试对 Webflux 进行响应式处理。我们将 Jaegar 与 Istio 一起用于检测目的。
Jaegar 非常了解 Spring MVC 端点,但似乎根本不适用于 WebFlux。
我正在寻找使我的 webflux 端点出现在 Jaeger 中的建议。
提前致谢。
【问题讨论】:
标签: spring-webflux istio opentracing jaeger
继续使用 Jaegar 的最佳方法是不使用 JAEGAR CLIENT!
Jaegar 有能力收集 Zipkin 跨度:
https://www.jaegertracing.io/docs/1.8/getting-started/#migrating-from-zipkin
您应该利用这一点并使用下面的 Sleuth+Zipkin 依赖项,并在您的 Spring Boot 应用程序中排除 Jaegar 代理 jar。
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-sleuth-zipkin</artifactId>
</dependency>
默认情况下,上述内容会将 Zipkin 跨度发送到 http://localhost:9411。您可以通过覆盖 zipkin 基本 URL 在 Spring Boot 应用程序中覆盖它以轻松指向 Jaegar 服务器。
spring.zipkin.base-url=http://your-jaegar-server:9411
Sleuth 将完成所有繁重的工作,默认日志记录将记录 span 和 traceIds。
在log4j2.xml文件中,你要提的是
[%X]
您可以在此处找到示例代码:
【讨论】: