From 6550dacb580f05febcbbfc0cff15570ae10f2357 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=BD=97=E7=A5=A5?= <1366971433@qq.com> Date: Sat, 19 Jan 2019 12:53:26 +0800 Subject: [PATCH] =?UTF-8?q?=E6=8F=90=E4=BA=A4spring-cloud-sleuth-zipkin?= =?UTF-8?q?=E7=9A=84=E7=94=A8=E4=BE=8B=E8=AF=B4=E6=98=8E?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pictures/zipkin-download.png | Bin 0 -> 83446 bytes .../spring-cloud-sleuth-zipkin/README.md | 99 ++++++++++++++++-- .../zuul/src/main/resources/application.yml | 5 +- 3 files changed, 96 insertions(+), 8 deletions(-) create mode 100644 pictures/zipkin-download.png diff --git a/pictures/zipkin-download.png b/pictures/zipkin-download.png new file mode 100644 index 0000000000000000000000000000000000000000..f681fff3988ad533e48bf7df9a237a3aadab379b GIT binary patch literal 83446 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 literal 0 HcmV?d00001 diff --git a/spring-cloud/spring-cloud-sleuth-zipkin/README.md b/spring-cloud/spring-cloud-sleuth-zipkin/README.md index f097484..00f8110 100644 --- a/spring-cloud/spring-cloud-sleuth-zipkin/README.md +++ b/spring-cloud/spring-cloud-sleuth-zipkin/README.md @@ -1,8 +1,93 @@ -https://zipkin.io/pages/quickstart +# spring-sleuth-zipkin -```$xslt -INFO [zuul,ecdee56c885e0d3b,ecdee56c885e0d3b,false] 16312 --- [nio-8090-exec-1] -INFO [zuul,ecdee56c885e0d3b,ecdee56c885e0d3b,false] 16312 --- [nio-8090-exec-1] -INFO [zuul,e2d282108f861cf4,e2d282108f861cf4,false] 16312 --- [nio-8090-exec-4] -INFO [zuul,e2d282108f861cf4,e2d282108f861cf4,false] 16312 --- [nio-8090-exec-4] -``` \ No newline at end of file +## 一、简介 + +在微服务架构中,几乎每一个前端的请求都会经过多个服务单元协调来提供服务,形成复杂的服务调用链路。当服务发生问题时候,很难知道问题来源于链路的哪一个环节,这时候就需要进行链路追踪。 + +zipkin 是一个开源的分布式跟踪系统,可以使用spring cloud sleuth 来轻松的集成 zipkin。 + + + +## 二、项目结构 + +这里的项目是在之前的 [spring-cloud-zuul](https://github.com/heibaiying/spring-samples-for-all/tree/master/spring-cloud/spring-cloud-zuul) 进行集成,zuul 项目的产品接口调用链路从 网关 -> consumer -> producer,历经三个环节的调用链路可以直观展示zipkin对链路追踪可视化的好处。 + ++ common: 公共的接口和实体类; ++ consumer: 服务的消费者,采用feign调用产品服务; ++ producer:服务的提供者; ++ eureka: 注册中心; ++ zuul: api网关。 + + + +## 三、构建 zipkin 服务端 + +zipkin 客户端可以不用自己构建,直接从[官网](https://zipkin.io/pages/quickstart)上下载对应的jar 包启动即可,默认端口 9411 + +```shell +java -jar zipkin.jar +``` + +可以直接从docker仓库拉取,然后启动容器: + +```shell +docker run -d -p 9411:9411 openzipkin/zipkin +``` + +
+ + + + + +## 四、集成zipkin + +这里我们对zuul、consumer、producer 三个模块都进行集成 + +#### 4.1 对三个模块(zuul、consumer、producer )添加依赖 + +```xml + + + org.springframework.cloud + spring-cloud-starter-zipkin + +``` + +#### 4.2 分别在三个模块的application.yml 配置文件中指定zipkin的地址 + +```yaml +spring: + zipkin: + base-url: http://localhost:9411/ + # 可以指定监控数据的采样率 + sleuth: + sampler: + probability: 1 +``` + + + +## 五、启动项目 + +分别启动,eureka,zuul,consumer,producer,zuul ,访问 http://localhost:9411/ ,查看我们的服务调用链路 + +
+ +点击链路,则可以查看具体的调用情况 + +
+ +展示信息说明: + +Span : 基本工作单元,发送一个远程调度任务就会产生一个 Span。 + +Trace:由一系列 Span 组成的,呈树状结构。 所有由这个请求产生的 Span 组成了这个 Trace 。 + +SpanId ; 工作单元 (Span) 的唯一标识。 + +TraceId : 一条请求链路 (Trace) 的唯 一 标识。 + +除了TraceID外,还需要SpanID用于记录调用父子关系。每个服务会记录下parent id和span id,通过他们可以组织一次完整调用链的父子关系。 + +注:关于以上概念可以比对链表的实现原理来理解。 \ No newline at end of file diff --git a/spring-cloud/spring-cloud-sleuth-zipkin/zuul/src/main/resources/application.yml b/spring-cloud/spring-cloud-sleuth-zipkin/zuul/src/main/resources/application.yml index 239f795..05fa42a 100644 --- a/spring-cloud/spring-cloud-sleuth-zipkin/zuul/src/main/resources/application.yml +++ b/spring-cloud/spring-cloud-sleuth-zipkin/zuul/src/main/resources/application.yml @@ -6,6 +6,10 @@ spring: name: zuul zipkin: base-url: http://localhost:9411/ + # 可以指定监控数据的采样率 + sleuth: + sampler: + probability: 1 # 指定注册中心地址 eureka: client: @@ -22,4 +26,3 @@ zuul: serviceId: consumer # 指定前缀 # prefix: /v1 -