一、Sleuth+Zipkin
Sleuth服务链路跟踪,可以记录⽇志,每⼀次的请求的全过程,并且会记录对应步骤的时间,还可以显示调⽤链路。
Zipkin是 Twitter 的⼀个开源项⽬,它基于 Google Dapper 实现,它致⼒于收集服务的定时数据,以解决微服务架构中的延迟问题,包括数据的收集、存储、查找和展现。可视化⼯具,⼀般和Sleuth配合使⽤,来实现微服务中服务的链路跟踪,记录请求中整个过程和所耗的时间。
市场上同类型的产品:SkyWalking等
二、7.2 Sleuth作⽤
记录每次请求的过程,可以记录时间,通过时间消耗,我们就可以定位要优化的内容⽽且还可以通过
Sleuth查看调⽤链(迹线)
记录请求过程的⽇志可视化信息平台,可以实现监控(调⽤链),还可以实现优化(记录每个过程)
三、Sleuth使⽤
1.下载 jar zipkin
2.启动 java -jar zipkin-server-2.23.16-exec.jar
端口号9411
2.项⽬中使⽤
1.依赖jar
<!-- sleuth-->
<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>
<version>2.2.8.RELEASE</version>
</dependency>
2.配置
spring:
cloud:
nacos:
discovery:
server-addr: 127.0.0.1:8848
#sleuth
sleuth:
sampler:
probability: 1 #设置采样率
zipkin:
sender:
type: web #设置⽇志收集的⽅式
base-url: http://localhost:9411/
service:
name: userapi
# sentinel
sentinel:
transport:
port: 8719
dashboard: 127.0.0.1:8080
main:
allow-circular-references: true
# nacos注册名字
application:
name: userapi
mvc:
pathmatch:
matching-strategy: ant_path_matcher #丝袜哥
server:
port: 8081
说明
项目结构
在依赖可以看到项目结构
serviceName=设置的名字
发起的请求