配置Sleuth链路追踪

    SOP基于SpringCloud,因此只要整合Spring Cloud Sleuth即可。除此之外,还需要支持dubbo的链路的跟踪,Sleuth在2.0已经对dubbo做了支持,详见:

    接入Spring Cloud Sleuth步骤如下:

    • 下载zipkin服务器

    以mac环境为例,执行下面命令,下载jar并启动zipkin服务

    默认端口是9411,更多安装方式详见:quickstart

    • sop-gateway/pom.xml添加依赖
    1. <dependency>
    2. <groupId>org.springframework.cloud</groupId>
    3. <artifactId>spring-cloud-starter-zipkin</artifactId>
    4. </dependency>

    重启sop-gateway

    添加依赖:

    1. <!--开启zipkin服务链路跟踪-->
    2. <groupId>org.springframework.cloud</groupId>
    3. <artifactId>spring-cloud-starter-zipkin</artifactId>
    4. </dependency>
    5. <!-- zipkin支持dubbo -->
    6. <dependency>
    7. <artifactId>brave-instrumentation-dubbo-rpc</artifactId>
    8. <version>5.6.6</version>
    9. </dependency>

    配置文件新增:

    重启服务

    • 打开sop-book/sop-book-web/pom.xml
    • 运行DubboDemoTest.java单元测试

    运行完毕看控制台,找到日志信息

    1. 2019-07-18 16:22:04.438 INFO [story-service,59dae98250b276bd,60828035658f175f,true] 90553 --- [:12345-thread-2] c.g.s.s.service.DefaultDemoService : dubbo provider, param: DemoParam(id=222)

    日志内容多了[story-service,59dae98250b276bd,60828035658f175f,true]部分,这些是zipkin加进去的,说明如下:

    查看各个服务的控制台,可以发现traceId是一致的。

    • 浏览器打开:

    将traceId复制黏贴到右上角文本框进行查询,可看到服务调用链。