Spring Boot v3.1.0 Webflux Micrometer 跟踪记录跟踪和跨度 ID

问题描述 投票:0回答:1

我有一个 Spring Boot 服务,我正在尝试使用 Micrometer Tracing 来实现跟踪。我假设我所要做的就是在我的 pom.xml 中包含以下内容,它就会起作用:

<dependency>
    <groupId>io.micrometer</groupId>
    <artifactId>micrometer-tracing</artifactId>
</dependency>

添加上述内容没有任何作用。我也有弹簧致动器。我尝试过添加

micrometer-tracing-bridge-brave
但那是行不通的。使用 Spring Cloud Slueth 以及所有内容都可以使用自动配置,我读过一些文章,其中指出 Micrometer 跟踪可以与 Spring MVC 一起使用,无需额外配置。我的问题是如何配置 Micrometer Tracing 与 Spring Webflux 一起使用?或者 Spring Webflux 还不支持?

提前致谢!

更新:

我还在

static void main
方法中尝试了以下方法:

Hooks.enableAutomaticContextPropagation();

这也不起作用。如果有人使用千分尺进行追踪,那么一个例子就太棒了!

spring-boot trace spring-boot-actuator micrometer-tracing
1个回答
0
投票

再次回答我的问题。我最终让它发挥作用。我的问题最终是跟踪和空间 ID 的日志记录模式。我使用的模式如下

%d{yyyy-MM-dd HH:mm:ss.SSS} %highlight{%-5level} %style{[%thread]}{bright} [%style{test-service}{bright blue},%style{%X{traceId:-}}{bright green},%style{%X{spanId:-}}{bright cyan}] %style{%logger{36}}{Magenta} - %msg%n

注意

traceId
spanId
后面有这个,
:-
。删除冒号破折号对我有用。仍然不确定为什么冒号破折号会破坏它。我希望这有帮助!

© www.soinside.com 2019 - 2024. All rights reserved.