SpringCloud(8) ------>Sleuth链路跟踪
一、简介
随着系统越来越庞大,各个服务间的调用关系也变得越来越复杂。当客户端发起一个请求时,这个请求经过多个服务后,最终返回了结果,经过的每一个服务都有可能发生延迟或错误,从而导致请求失败。这时候就需要请求链路跟踪工具来帮助我们,理清请求调用的服务链路,解决问题。
二、客户端配置
1、向pom文件中添加依赖
<!--添加链路追踪开始--> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-zipkin</artifactId> </dependency> <!--添加链路追踪结束-->
2、application.yml文件中添加配置
spring: #设置链路追踪 zipkin: base-url: http://localhost:9411 sleuth: sampler: probability: 0.1 #设置Sleuth的抽样收集概率,0.1表示10%
三、整合Zipkin获取及分析日志
Zipkin是Twitter的一个开源项目,可以用来获取和分析Spring Cloud Sleuth 中产生的请求链路跟踪日志,它提供了Web界面来帮助我们直观地查看请求链路跟踪信息。
1、zipkin-serve下载地址:
https://zipkin.io/pages/quickstart.html
2、zipkin-serve启动:
java -jar zipkin-server-2.12.9-exec.jar
3、Zipkin页面访问地址:http://localhost:9411
1)访问成功界面如下:
2)查询请求响应时间等
3)查询服务之间的依赖关系
四、使用Elasticsearch存储跟踪信息
如果zipkin-server重启一下就会发现刚刚的存储的跟踪信息全部丢失了,可见其是存储在内存中的,有时候我们需要将所有信息存储下来,这里将信息存储到Elasticsearch。
1、安装Elasticsearch并启动
参考:https://www.cnblogs.com/donleo123/p/14155322.html
2、修改zipkin-server的启动参数
zipkin: base-url: http://localhost:9411 sleuth: sampler: probability: 0.3 #设置Sleuth的抽样收集概率
3、启动zipkin
java -jar zipkin-server-2.12.9-exec.jar --STORAGE_TYPE=elasticsearch --ES_HOSTS=localhost:9200
参数说明:
- STORAGE_TYPE:表示存储类型
- ES_HOSTS:表示ES的访问地址
更多的参数可参考路径:
https://github.com/openzipkin/zipkin/tree/master/zipkin-server#elasticsearch-storage
4、通过kibana到http://localhost:5601 查看链路情况
分类:
SpringCloud
标签:
SpringCloud
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix