Zipkin使用SpringCloud Stream以及Elasticsearch

本文介绍如何通过集成SpringCloud Stream与RabbitMQ,改进ZipkinServer的链路信息收集与存储。采用Elasticsearch存储,实现持久化与高性能。步骤包括添加依赖、配置RabbitMQ与Elasticsearch参数、客户端配置等。
640?wx_fmt=gif
学习更多Java干货,戳上面的
蓝色字题
关注我!

在前面的文章中,我们已经成功的使用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

现在环境已经搭建完毕了,根据你的采样频率看一看结果如何吧

 

点击下方“阅读原文”查看源码!!!



640?wx_fmt=gif


640?wx_fmt=jpeg

 点赞收藏转发好看再走呗!

640?wx_fmt=gif


评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值