在分布式系统中,几乎每一个请求都会形成一条复杂的分布式服务调用链路,Spring Cloud Sleuth提供全链路调用的跟踪,可以帮助我们快速发现错误根源以及监控分析每条请求链路上的性能瓶颈等。

快速入门

参考:https://www.jianshu.com/p/5df2e83d0ef8
依赖

  1. <!--sleuth-->
  2. <dependency>
  3. <groupId>org.springframework.cloud</groupId>
  4. <artifactId>spring-cloud-starter-sleuth</artifactId>
  5. </dependency>

配置

  1. logging:
  2. level:
  3. root: debug
  4. org:
  5. springframework:
  6. cloud:
  7. sleuth: debug

调用服务后日志
image.png

正常情况链路信息打印到日志文件中,

  • 整合logstash,打印到es中
  • 整合zipkin,直观显示微服务之间的调用关系

上面博客链接补充的更多,使用stream,mq来使得微服务与sleuth解耦;使用sleuth搜集数据,然后使用elk持久化数据