SpringCloud-Sleuth-Zipkin服务跟踪

需求分析:

  微服务架构下一个业务处理多层服务调用,例如:A调用B -> B调用C -> C调用A 要追踪各个服务调用链耗时等情况

1.安装ZipKin服务

ZipKin官网:https://zipkin.io/pages/quickstart.html

Docker方式部署(Docker环境:https://www.cnblogs.com/zhangdongfang/p/11810455.html)

执行 docker run -d -p 9411:9411 openzipkin/zipkin 即可快速部署

 

 ZipKin环境验证:

 2.引入Sleuth-ZipKin

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

由于spring-cloud-starter-zipkin内已经包含了 zipkin和sleuth,故引入spring-cloud-starter-zipkin即可

 3.配置zipkin服务

 4.验证(本次流程: a. client调用order创建订单; b. order 调用 product 获取商品信息;c. order调用product扣减库存;d. product扣减库存后,将商品信息消息发送mq;e. order监听mq获取product应用发送商品信息处理)

order应用日志:

 2019-11-23 12:44:46.844  INFO [order,ece634965bc3b8c4,022508e26329677e,true]

order为应用名称;ece634965bc3b8c4  traceId(追踪总线,本次唯一)  ; 022508e26329677e 为spanId(追踪辅线 内部接口调用)

product应用日志:

 2019-11-23 12:44:46.840  INFO [product,ece634965bc3b8c4,48b95dff7c748822,true] 

product为应用名称;ece634965bc3b8c4  traceId(追踪总线,本次唯一)  ; 48b95dff7c748822 为spanId(追踪辅线 内部接口调用)

Zipkin应用查看:

 

 

 a.创建订单

 

 b.调用product应用查询商品列表

 

 c.调用product应用扣减库存

 

 d.product应用发送商品信息到mq

 

 e.监听mq获取product应用发送商品信息,进行业务处理

 

 

 

 

 

 

posted @ 2019-11-23 13:13  Melek  阅读(183)  评论(0编辑  收藏  举报