• SpringCloud Sleuth 分布式请求链路跟踪

    概述

    在微服务框架中,一个由客户端发起的请求在后端系统中会经过多个不同的服务节点调用来协同产生最后的请求结果,每一个前段请求都会形成一条复杂的分布式服务调用链路,链路中的任何一个环节出现高延迟或者错误都会引起整个请求最后的失败。

    SpringCloudSleuth提供了一套完整的解决方案,在分布式系统中提供追踪解决方案并且兼容支持了zipkin

    部署

    安装Zipkin

    下载Jar包

    直接在控制台运行即可

    java -jar zipkin-server-exec.jar
    

    docker

    docker pull openzipkin/zipkin:latest
    docker run -d -p 9411:9411 openzipkin/zipkin:latest
    

    浏览器访问http://localhost:9411/ 即可。

    pom配置

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

    yml配置

    Spring:
      zipkin:
        base-url: http://localhost:9411
        sleuth:
          sampler:
            probability: 1    #采样率值介于0-1之间,1表示全部采集。