7.Spring Cloud Sleuth 整合Zipkin 服务链路跟踪

Spring Cloud Sleuth

Spring Cloud Sleuth 是服务跟踪组件,通过日志提供服务之间调用链路数据。

Spring Cloud Sleuth数据格式:[微服务名称,TraceId,SpanId,导出标识]

TraceId是一条服务链路上的唯一标识,SpanId则为步骤id。

我们只需要在各个微服务中引入Spring Cloud Sleuth的maven依赖,从输出日志中即可查看。

这里以服务A调用服务B,服务B调用服务C为例,在这三个服务中分别加入Spring Cloud Sleuth的maven依赖。

<dependency>
	<groupId>org.springframework.cloud</groupId>
	<artifactId>spring-cloud-starter-sleuth</artifactId>
</dependency>

分别启动项目

在这里插入图片描述

调用A服务的请求查看日志(截取主要日志):

INFO [service-a,e9a0b83ebcefda4b,e9a0b83ebcefda4b,true] 8184 --- [nio-8001-exec-1] c.demo.servicea.controller.AController   : a
INFO [service-b,e9a0b83ebcefda4b,a8f44111ff24da26,true] 3756 --- [nio-8002-exec-2] c.demo.serviceb.controller.BController   : b
INFO [service-c,e9a0b83ebcefda4b,2741d01d75fb3146,true] 10008 --- [nio-8003-exec-5] c.demo.servicec.controller.CController   : c

通过[service-a,e9a0b83ebcefda4b,e9a0b83ebcefda4b,true][service-b,e9a0b83ebcefda4b,a8f44111ff24da26,true][service-c,e9a0b83ebcefda4b,2741d01d75fb3146,true]这就组成了一条完整的服务调用链路。

tranceID:e9a0b83ebcefda4b

spanID:e9a0b83ebcefda4b-》a8f44111ff24da26-》2741d01d75fb3146

这种 看起来十分的麻烦,你需要分别去三个服务中查看日志。

Zipkin

分布式链路追踪系统,将Spring Cloud Sleuth提供的服务链路数据收集起来,进行可视化的展示。

Zipkin需要独立的部署服务端。部署完服务端,只需要在微服务中引入Zipkin的客户端即可。

  • 部署Zipkin服务端

    快捷地址:Zipkin

    里面介绍了三种方式。

    在这里插入图片描述

    我就用第二种方式,直接 在Linux服务器上面部署了。

    在这里插入图片描述

    运行成功以后直接访问即可。

    在这里插入图片描述

  • 微服务引入Zipkin客户端

    在微服务中添加Zipkin客户端依赖

    <dependency>
    	<groupId>org.springframework.cloud</groupId>
    	<artifactId>spring-cloud-starter-zipkin</artifactId>
    </dependency>
    

    配置文件中添加Zipkin的相关配置

    spring:
      #sleuth配置
      sleuth:
        #采样器
        sampler:
          #采样率 默认0.1。采集TraceID的比率
          probability: 1.0
          #每秒采集TraceID数据量
          rate: 10
      #Zipkin设置
      zipkin:
        base-url: http://localhost:9411
    

    扩展:spring.sleuth.sampler.probabilityspring.sleuth.sampler.rate配套使用,出于对微服务的保护机制,如果在高并发情况下,每秒采集Trace数据量很高,且采集比率很高的情况下,会导致微服务挂掉。这里用于模拟,设置的数据。

    三个服务重启成功,调用请求,我们在Zipkin的网页中输入服务名:

    在这里插入图片描述

    查看详情

    在这里插入图片描述

关于sleuth整合Zipkin的用途还有很多。Sleuth Web

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值