修订日期 | 内容 |
---|---|
2021-2-28 | 初稿 |
6-Spring Cloud微服务快速搭建-分布式链路追踪-sleuth-zipkin
分布式链路追踪-sleuth
简介
spring cloud sleuth主要功能就是在分布式系统中提供链路追踪方案,内部集成了Twitter的Zipkin开源组件,直接引入依赖即可使用。
初体验
- 在每一个需要记录链路日志的子项目module添加依赖与记录日志配置文件
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-sleuth</artifactId>
</dependency>
# 日志输出
logging:
level:
root: INFO
org.springframework.web.servlet.DispatherServlet: DEBUG
org.springframework.cloud.sleuth: DEBUG
启动服务后使用网关服务调用,查看每个模块中是否有类似的日志输出
DEBUG [order-service,4420fabdc4b31b6d,be24fcc844b2b5fd,true]
4420fabdc4b31b6d:traceId-一个完整的链路id
be24fcc844b2b5fd:spanId-每一个单独的微服务链路ID,traceId可以看作是父ID
zipkin 服务端web整合
- 下载web服务端程序,并运行
zipkin server下载链接
直接使用java -jar zipkin-server-2.12.9-exec.jar
命令启动,默认端口:9411 - 引入依赖
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-zipkin</artifactId>
</dependency>
- 修改配置文件
spring:
zipkin:
base-url: http://localhost:9411/ # zipkin服务端地址
sender:
type: web
sleuth:
sampler:
rate: 100 # 采样比例,默认10,不同版本不一样,100,全采集