010-调用链监控-Sleuth
banner 2022-03-14 22:03:24 微服务SpringCloudSpringCloudAlibabaSleuthZipkin
# 一、什么是Sleuth
一个链路追踪工具,通过它在日志中打印的信息可以分析出一个服务的调用链条,也可以得出链条中每个服务的耗时,这为我们在实际生产中,分析超时服务,分析服务调用关系,做服务治理提供帮助。
# 二、术语
Span:基本工作单元。例如,发送RPC是一个新的跨度,就像发送响应到RPC一样。跨度由跨度的唯一64位ID和跨度所属的跟踪的另一个64位ID标识。跨区还具有其他数据,例如描述,带有时间戳的事件,键值注释(标签),引起跨度的跨区ID和进程ID(通常为IP地址)。
trace: 轨迹。一组spans,形成树状结构。
Annotation: 标注
# 三、导入Sleuth
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-sleuth</artifactId>
</dependency>
1
2
3
4
2
3
4
# 四、Zipkin是什么 (opens new window)
# 4.1 导入依赖
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-zipkin</artifactId>
</dependency>
1
2
3
4
2
3
4
上面的sleuth导入已经不需要了。
# 4.2 添加配置
spring:
zipkin:
base-url: http://localhost:9411/
sleuth:
sampler:
# 抽样率,默认为0.1 (10%)
probability: 1.0
1
2
3
4
5
6
7
2
3
4
5
6
7
# 4.3 整合Zipkin之后Nacos报错
SpringCloud 将 http://localhost:9411当成了一个服务发现组件中的服务名称。
解决方案:正确识别URL
spring:
zipkin:
base-url: http://localhost:9411/
discoveryClientEnabled: false
sleuth:
sampler:
# 抽样率,默认为0.1 (10%)
probability: 1.0
1
2
3
4
5
6
7
8
2
3
4
5
6
7
8