spring cloud微服務快速教程之(十一) Sleuth(zipkin) 服務鏈路追蹤
阿新 • • 發佈:2020-02-24
0、前言
微服務架構上眾多微服務通過REST呼叫,可能需要很多個服務協同才能完成一個介面功能,如果鏈路上任何一個服務出現問題或者網路超時,都會形成導致介面呼叫失敗。隨著業務的不斷擴張,服務之間互相呼叫會越來越複雜。如何清晰地記錄服務的呼叫鏈路,方便將來問題的定位,Spring cloud sleuth元件正是為了解決微服務跟蹤的元件。
1、專案整合sleuth(zipkin)
1-1、執行服務端
服務端有兩種方式:
一種是自己構建spring boot專案,自行定製編譯;spring boot 2.X後,官方不再推薦這種做法,
一種是直接下載編譯好的JAR包,直接執行,這也是官方的推薦做法;
我們下載好JAR包後,直接執行,預設埠是9411,
java -jar zipkin-server-2.10.1-exec.jar
1-2、客戶端整合
1-2-1、新增依賴:
<!-- 整合sleuth\zipkin --> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-zipkin</artifactId> </dependency> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-sleuth</artifactId> </dependency>
1-2-2、新增配置
server: port: 8762 spring: application: name: nacos-user cloud: nacos: discovery: server-addr: 127.0.0.1:8848 sentinel: transport: dashboard: localhost:8849 eager: true sleuth: web: client: enabled: true sampler: probability: 1.0 # 將取樣比例設定為 1.0,也就是全部都需要。預設是 0.1 zipkin: base-url: http://localhost:9411/ # 指定了 Zipkin 伺服器的地址
完成
2、執行測試
啟動服務,啟動客戶端程式,http://localhost:9411/zipkin/ 就可以看到面板相關資訊了:
各項指標的詳細資訊請參考官方