1. 程式人生 > >每天學點SpringCloud(十四):Zipkin使用SpringCloud Stream以及El

每天學點SpringCloud(十四):Zipkin使用SpringCloud Stream以及El

在前面的文章中,我們已經成功的使用Zipkin收集了專案的呼叫鏈日誌。但是呢,由於我們收集鏈路資訊時採用的是http請求方式收集的,而且鏈路資訊沒有進行儲存,ZipkinServer一旦重啟後就會所有資訊都會消失了。基於效能的考慮,我們可以對它進行改造,使用SpringCloud Stream進行訊息傳遞,使用Elasticsearch進行訊息的儲存。

參考文章


Zipkin全鏈路監控 

SpringCloud-Stream整合RabbitMQ

改造ZipkinServer

1. 增加依賴
1
2
3
4
5
6
7
8
9
10
<dependency>

           <groupId>io.zipkin.java</groupId>
           <artifactId>zipkin-autoconfigure-collector-rabbitmq</artifactId>
           <version>2.11.8</version>
       </dependency
>

       <dependency>
           <groupId>io.zipkin.java</groupId>
           <artifactId>zipkin-autoconfigure-storage-elasticsearch-http</artifactId>
           <version
>
2.8.4</version>

       </dependency>
2. 配置檔案

增加rabbit和es的相關配置

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
zipkin:
 collector:
   rabbitmq:
     addresses: 10.0.20.132
     port: 5672
     username: root
     password: root
     virtual-host: /unicode-pay
     queue: zipkin
 storage:
   StorageComponent: elasticsearch
   type: elasticsearch
   elasticsearch:
     hosts: 10.0.20.25:9200
     cluster: elasticsearch
     index: zipkin
     index-shards: 5
     index-replicas: 1

至此ZipkinServer的配置就搞定了。

3. 客戶端增加依賴

以下兩個依賴任選其一就可以

1
2
3
4
<dependency>
<groupId>org.springframework.amqp</groupId>
<artifactId>spring-rabbit</artifactId>
</dependency>
1
2
3
4
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-amqp</artifactId>
</dependency>
4. 客戶端增加mq的相關配置
1
2
3
4
5
6
7
8
9
10
11
12
spring:
 sleuth:
   sampler:
     probability: 1.0
 rabbitmq:
   addresses: 10.0.20.132
   port: 5672
   username: root
   password: root
 zipkin:
   rabbitmq:
     queue: zipkin

注意要把以下配置去掉哦

1
2
3
4
5
spring:
 zipkin:
   base-url: http://localhost:19411
   sender:
     type: web

現在環境已經搭建完畢了,根據你的取樣頻率看一看結果如何吧

GitHub地址:https://github.com/shiyujun/spring-cloud-demo。程式碼所在模組:cloud-demo-zipkin-server,cloud-demo-consumer-feign-hystrix,cloud-demo-provider

如果對您有所幫助,請記得幫忙點一個star哦

本文出自http://zhixiang.org.cn,轉載請保留。