前言
本文采用Spring cloud本文為2.1.8RELEASE盼产,version=Greenwich.SR3
本文基于前兩篇文章eureka-server、eureka-client礼华、eureka-ribbon和spring-gateway的實現(xiàn)咐鹤。
參考
概述
前一篇文章講述了Sleuth鏈路追蹤的http的日志收集的搭建過程,這篇文章補充一下rabbitmq日志收集機制的搭建過程圣絮。
http方式存在的問題祈惶,如果應用服務與zipkin服務端網(wǎng)絡不通或者閃斷的情況下,這種情況是無法正常收集的,而且zipkin默認是將數(shù)據(jù)存儲在內(nèi)存當中的捧请,如果服務端重啟或者宕機凡涩,數(shù)據(jù)就會丟失。
rabbitmq的方式完美的解決了這種問題(用消息中間件的好處我這里就不過多闡述)疹蛉。
1. 對原有應用進行改造
1.1 增加pom依賴
在eureka-client活箕、eureka-ribbon、spring-gateway對應的pom.xml增加如下依賴:
<dependency>
<groupId>org.springframework.amqp</groupId>
<artifactId>spring-rabbit</artifactId>
</dependency>
說明:
最新官網(wǎng)已經(jīng)不推薦使用spring-cloud-sleuth-stream
可款,而推薦使用spring-rabbit
育韩。
- 引用官網(wǎng)原文:
spring-cloud-sleuth-stream is deprecated and incompatible with these destinations.
1.2 修改application.yml文件
修改eureka-client、eureka-ribbon闺鲸、spring-gateway應用對應的application.yml配置文件,參考如下配置:
spring:
sleuth:
sampler:
probability: 1
web:
enabled: true
zipkin:
sender:
type: rabbit
rabbitmq:
host: localhost
port: 5672
username: guest
password: guest
要刪除http方式的
zipkin.base-url: http://localhost:9411/
配置筋讨。
1.3 啟動服務
啟動rabbitmq和zipkin服務,這里需要說明的是,啟動zipkin服務輸入如下命令啟動:
$ java -jar zipkin.jar --zipkin.collector.rabbitmq.addresses=localhost
摸恍,
默認guest賬戶悉罕。
$ java -jar zipkin.jar --zipkin.collector.rabbitmq.addresses=localhost --zipkin.collector.rabbitmq.username=xxx --zipkin.collector.rabbitmq.password=xxx
,啟動自定義用戶名和密碼立镶。
然后順序啟動eureka-client壁袄、eureka-ribbon、spring-gateway應用服務媚媒。
訪問http://localhost:8100/ribbon/sayHello
, 可以多刷新幾次然想,然后我們可以訪問http://localhost:9411/zipkin
,點擊查詢可以到和http方式相同的結(jié)果,如下圖所示:
這時候我們訪問rabbitmq的后臺管理地址:http://localhost:15672
, 可以在管理頁面中的Queues中看到如下顯示:
AMQP default
令哟,如下圖所示:恼琼、
至此,Sleuth+ZipKin的rabbitmq的方式收集就搭建完成屏富。
1.4 小結(jié)
Spring cloud Sleuth分布式鏈路追蹤不僅支持rabbitmq晴竞,還支持kafaka,實現(xiàn)過程和rabbitmq完全相同狠半,只有修改對應的依賴包和配置就可以了噩死,這里就不在演示。
代碼地址
<center><font color=red>《Srping Cloud 2.X小白教程》目錄</font></center>
- spring cloud 2.x版本 Eureka Server服務注冊中心教程
- spring cloud 2.x版本 Eureka Client服務提供者教程
- spring cloud 2.x版本 Ribbon服務發(fā)現(xiàn)教程(內(nèi)含集成Hystrix熔斷機制)
- spring cloud 2.x版本 Feign服務發(fā)現(xiàn)教程(內(nèi)含集成Hystrix熔斷機制)
- spring cloud 2.x版本 Zuul路由網(wǎng)關(guān)教程
- spring cloud 2.x版本 config分布式配置中心教程
- spring cloud 2.x版本 Hystrix Dashboard斷路器教程
- spring cloud 2.x版本 Gateway路由網(wǎng)關(guān)教程
- spring cloud 2.x版本 Gateway自定義過濾器教程
- spring cloud 2.x版本 Gateway熔斷神年、限流教程
- spring cloud 2.x版本 Gateway動態(tài)路由教程
- spring cloud 2.x版本 Sleuth+Zipkin分布式鏈路追蹤
- spring cloud 2.x版本 Sleuth+Zipkin分布式鏈路追蹤補充內(nèi)容(rabbitmq日志收集)
- 寫作不易已维,轉(zhuǎn)載請注明出處,喜歡的小伙伴可以關(guān)注公眾號查看更多喜歡的文章已日。
- 聯(lián)系方式:4272231@163.com