我的目的是跟踪每一个请求到我的系统。我在Youtube上观看了下面的2个视频,以配置Micrometer & Zipkin进行跟踪。
- Implementing Distributed Tracing in Microservices with Spring Boot 3.0, Micrometer, and Zipkin
- Java - Spring Boot 3: Tracing de Microservices con Micrometer y Zipkin
但是,当我访问http://localhost:9411/zipkin/
时,它工作不正常,让我感到困惑。
所以我有几个问题:
1.起初,我从来没有执行任何请求,为什么Zipkin Jmeter 板上有这么多请求?
1.我使用Postman执行三个请求(1个来自order-service
,2个来自product-service
),为什么它只显示来自order-service
的请求,像这样
1.为什么跨度(Zipkin Jmeter 板)总是1。虽然每个请求都必须首先通过api-gateway service
,但它与视频1不同。
对于千分尺配置,我参考了千分尺和Zipkin:如何在Sping Boot 3中跟踪HTTP请求
我将management.tracing.sampling.probability=1.0
插入到每个application.properties
文件中,并将下面的依赖项插入到每个pom.xml中
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-actuator</artifactId>
</dependency>
<dependency>
<groupId>io.micrometer</groupId>
<artifactId>micrometer-observation</artifactId>
</dependency>
<dependency>
<groupId>io.micrometer</groupId>
<artifactId>micrometer-tracing-bridge-brave</artifactId>
</dependency>
<dependency>
<groupId>io.zipkin.reporter2</groupId>
<artifactId>zipkin-reporter-brave</artifactId>
</dependency>
这是我的建筑系统:
1条答案
按热度按时间mklgxw1f1#
首先,我尝试检查
management.tracing.sampling.probability=1.0
,它会引发一个错误:我真的不明白为什么会这样,之后我发现不同的,有2个dendencie,他们看起来很相似:
我试着去找Spring的文档:
actuator.micrometer-tracing.tracer-implementations
,我意识到我实际需要的依赖关系是spring-boot-starter-actuator
我从文档中插入三个新的依赖项:
总而言之,我们将使用这些依赖项来跟踪使用Micrometer & Zipkin的http请求。