首先 我们需要依赖sleuth 和 sleuth与zipkin的整合依赖:
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-sleuth</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-zipkin</artifactId>
</dependency>
然后在微服务中加入以下配置:
spring:
zipkin:
base-url: http://localhost:9000 #指定Zipkin server地址
sleuth:
sampler:
probability: 1.0 #request采样的数量 默认是0.1 也即是10% 顾名思义 采取10%的请求数据 因为在分布式系统中,数据量可能会非常大,因此采样非常重要。我们示例数据少最好配置为1全采样
然后启动微服务并模拟一次调用链 我这里是用user 微服务调用了power微服务 (注意,每个微服务都需要和zipkin整合)
调用完成之后 我们去zipkin server 页面去看看:
这里我模拟了2条请求 一个是正常的 一个是不正常的正常的就不看了 我们看看不正常的是什么样子的
他会显示你的微服务调用耗时并且在哪个阶段出了错误 还会把微服务名给显示出来(因为我这里就是在user这里出错的 所以这里显示的是user 如果是power微服务出错了 那么这个微服务名就会变成power) 而且可以点击进去查看详情:
他会把具体的错误信息给你展示出来 方便错误的定位。
其他的你们可以自己去测试看看