目录地址:
一、整合sleuth
1.引入依赖
在需要追踪的微服务中引入依赖,user、order、product
XML
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-sleuth</artifactId>
</dependency>
2.启动微服务;访问服务接口;可以看到order的控制台信息
绿色部分INFO,就是链路信息,参数:
参数一:微服务名称,spring.application.name 的值
参数二:表示 本次请求的链路追踪 id(Trace ID),本次请求涉及多个下游服务,链路追踪 id 相同,表示这些都是同一次追踪
参数三:表示 当前服务本次链路追踪的 id(Span ID),本次请求涉及多个下游服务,每个微服务的 Span ID 都不相同,代表不同的服务。
二、整合zipkin
1.安装并启动zipkin,可以自己下载,这里使用docker版
bash
docker pull openzipkin/zipkin
docker run --name zipkin -p 9411:9411 openzipkin/zipkin -d
2.在3个微服务模块添加依赖
XML
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-zipkin</artifactId>
<!--zipkin 是第三方的,版本和 spring cloud 不同步,所以要指定版本-->
<version>2.2.8.RELEASE</version>
</dependency>
3.添加配置
XML
spring:
zipkin:
# 配置 zipkin 服务所在地址
base-url: http://localhost:9411
# 不开启服务发现
discovery-client-enabled: false
sender:
type: web
sleuth:
sampler:
# 配置 sleuth 链路追踪采样 百分比,1:百分百,0.1:百分之十。采样比例过高影响性能
probability: 0.1
4.启动微服务,访问order的接口,查看zipkin页面,可以点进去看详情
访问之后,过一会才能看到信息
5.zipkin的持久化