SpringCloud之Sleuth&Zipkin(分布式服务跟踪)

SpringCloud之Sleuth&Zipkin(分布式服务跟踪)

一.Sleuth&Zipkin是什么?
sleuth :链路追踪器
zipkin:链路分析器,可以理解为可视化界面,配合Sleuth可以清晰定位请求流程
//zipkin是Twitter基于google的分布式监控系统Dapper(论文)的开发源实现,
//zipkin用于跟踪分布式服务之间的应用数据链路,分析处理延时,帮助我们改进系统的性能和定位故障。
二.为什么需要链路追踪?
	在微服务框架中,一个由客户端发起的请求在后端系统中经过多个不同的服务节点调用来协同生产最后的请求结果,	
	每一个前段请求会形成一条复杂的分布式服务调用链路链路中的任何一环出现高延时或错误都会引起这个请求最后的失败,
所以我们需要一个专门用于记录链路数据,可以迅速定位故障
三.Sleuth工作流程
1.sleuth 记录的是一次请求链路(请求经过哪些服务,哪些类)
2.一条链路有个唯一标识(Trace ID), 每个经过一个链路(服务)使用Span来标识(记录请求相关信息), 
  各个span间使用parent ID 关联

在这里插入图片描述

四.Zipkin+Sleuth整合
	//Sleuth
	1.在cloud-provide-product8080和cloud-consumer-order8090中添加sleuth依赖
		springcloud 默认集成了 sleuth + zipkin, 导一个依赖即可
		<dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-zipkin</artifactId>
        </dependency>
	2.在需要写日志的类上贴@Slf4j,然后再cloud-consumer-order8090,cloud-provide-product8080中打印日志。	
	3.需要在product-server和order-server中的yml配置文件中添加zipkin地址.      
        spring:
          zipkin:
            base-url: http://localhost:9411
          sleuth:
            sampler:
              #采用率,介于01之间, 1表示全部收集
              probability: 1
  	4.启动zipkin服务,我们直接使用的是jar的方式.
    5.测试:访问  http://localhost:9411
五.日志参数讲解
日志格式:
[order-server,c323c72e7009c077,fba72d9c65745e60,false] 

1、第一个值,spring.application.name的值,服务名
			
2、第二个值,c323c72e7009c077,sleuth生成的Trace ID,用来标识请求链路,一条请求链路中包含一个Trace ID,多个Span ID
			
3、第三个值,fba72d9c65745e60、spanID 基本的工作单元,获取元数据,如发送一个http

4、第四个值:false,是否要将该信息输出到zipkin服务中来收集和展示。
六.小结
1.Sleuth是链路追踪器,一条链路上有一个唯一的Trace Id 和多个Span ID,通过id追踪一个请求的整个链路情况
2.zipkin是链路分析器,可以理解为可视化界面,配合Sleuth可以清晰定位请求流程
3.使用Sleuth与zipkin,需要启动类和启动zipkin服务,Sleuth定位追踪,zipkin主要用于显示界面
4.需要在yml中配置采用率以及导入依赖(导入其中一个即可)
5.日志上面也会显示追踪的信息
  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值