SpringCloud 商城系統搭建之Sleuth
前提
本文是基於SpringCloud 商城系統搭建之eureka
SpringCloud Sleuth 簡介
Spring Cloud Sleuth為Spring Cloud實現了分散式跟蹤解決方案。
Spring Cloud Sleuth借鑑了Dapper的術語。
Span:基本的工作單元。Span包括一個64位的唯一ID,一個64位trace碼,描述資訊,時間戳事件,key-value 註解(tags),span處理者的ID(通常為IP)。
Trace:一組Span形成的樹形結構。
Annotation:用於及時記錄存在的事件。常用的Annotation如下:
- cs:客戶端傳送(client send) 客戶端發起一個請求,表示span開始
- sr:伺服器接收(server received) 伺服器接收到客戶端的請求並開始處理,sr - cs 的時間為網路延遲
- ss:伺服器傳送(server send) 伺服器處理完請求準備返回資料給客戶端。ss - sr 的時間表示伺服器端處理請求花費的時間
- cr:客戶端接收(client received) 客戶端接收到處理結果,表示span結束。 cr - cs 的時間表示客戶端接收服務端資料的時間
Sleuth 整合
按照下面步驟改造之前的專案supermarker-provider
1、在pom.xml 檔案中,新增Spring Cloud Sleuth 的jar 包依賴
<!--sleuth -->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-sleuth</artifactId>
</dependency>
2、application.properties 新增日誌檔案輸出,方便查詢資訊追蹤
# 日誌記錄輸出
logging.level.root=Info
logging.level.org.springframework.web.servlet.DispatcherServlet=DEBUG
3、分散式鏈路資訊追蹤:分別啟動:supermarker-eureka、supermarker-provider、supermarker-consume,瀏覽器訪問:http://localhost:8083/user?id=2
重點檢視supermarker-provider 生成的請求鏈路資訊:
2020-12-18 02:12:41.048 DEBUG [provider,140c59722f545377,140c59722f545377,false] 7264 --- [nio-8082-exec-4] o.s.web.servlet.DispatcherServlet : GET "/user?id=1", parameters={masked}
---------------provider埠被呼叫--------------8082
2020-12-18 02:12:41.357 INFO [provider,140c59722f545377,140c59722f545377,false] 7264 --- [nio-8082-exec-4] o.h.h.i.QueryTranslatorFactoryInitiator : HHH000397: Using ASTQueryTranslatorFactory
Hibernate: select user0_.use_id as use_id1_0_, user0_.create_time as create_t2_0_, user0_.modify_time as modify_t3_0_, user0_.use_age as use_age4_0_, user0_.use_email as use_emai5_0_, user0_.use_id_no as use_id_n6_0_, user0_.use_name as use_name7_0_, user0_.use_phone_num as use_phon8_0_, user0_.use_sex as use_sex9_0_, user0_.use_state as use_sta10_0_ from user user0_ where user0_.use_id=1
2020-12-18 02:12:41.836 DEBUG [provider,140c59722f545377,140c59722f545377,false] 7264 --- [nio-8082-exec-4] o.s.web.servlet.DispatcherServlet : Completed 200 OK
2020-12-18 02:12:43.799 INFO [provider,,,] 7264 --- [tbeatExecutor-0] com.netflix.discovery.DiscoveryClient : DiscoveryClient_PROVIDER/provider1 - Re-registering apps/PROVIDER
2020-12-18 02:12:43.799 INFO [provider,,,] 7264 --- [tbeatExecutor-0] com.netflix.discovery.DiscoveryClient : DiscoveryClient_PROVIDER/provider1: registering service...
2020-12-18 02:12:43.813 INFO [provider,,,] 7264 --- [tbeatExecutor-0] com.netflix.discovery.DiscoveryClient : DiscoveryClient_PROVIDER/provider1 - registration status: 204
2020-12-18 02:12:48.385 DEBUG [provider,ff83f1addcfe58f1,ff83f1addcfe58f1,false] 7264 --- [nio-8082-exec-7] o.s.web.servlet.DispatcherServlet : GET "/user?id=1", parameters={masked}
其中:140c59722f545377 是traceID, 140c59722f545377 是spanID .
如果想仔細檢視鏈路生成具體資訊,可以將日誌輸出調整如下:
logging.level.root=Info
logging.level.org.springframework.cloud.sleuth=DEBUG
相關文章
- java B2B2C Springcloud多租戶電子商城系統-Spring Cloud SleuthJavaSpringGCCloud
- springcloud整合sleuthSpringGCCloud
- SpringCloud 2020.0.4 系列之 Sleuth + ZipkinSpringGCCloud
- SpringCloud學習筆記(7)——SleuthSpringGCCloud筆記
- JAVA商城 B2B2C商城系統 小程式 電子商務 springcloud商城JavaSpringGCCloud
- 如何使用Thinkphp搭建商城系統(一)PHP
- NFT商城系統介紹|NFT模式系統原始碼搭建模式原始碼
- 盲盒賣貨商城系統搭建部署
- java商城系統架構之第三篇——叢集架構搭建Java架構
- java B2B2C Springcloud電子商城系統-搭建一個簡單的Eureka程式JavaSpringGCCloud
- java B2B2C Springcloud多租戶電子商城系統- Gateway 之Predict篇JavaSpringGCCloudGateway
- NFT盲盒商城遊戲系統開發技術搭建遊戲
- 手撕商城體系之產商品系統
- 湘宜購商城(系統開發)小程式技術搭建
- 未來世界商城系統技術開發搭建(詳情)
- NFT商城藏品開發系統搭建及NFT遊戲技術遊戲
- java B2B2C Springcloud電子商城系統- Gateway初體驗JavaSpringGCCloudGateway
- wemall商城6.0微商城系統詳情
- 微商城小程式系統原始碼開發搭建前景和公司原始碼
- 社交新零售模式小程式商城搭建(原始碼系統)模式原始碼
- 社交新零售電商商城系統開發軟體搭建
- NFT卡牌遊戲系統開發|NFT盲盒商城開發搭建遊戲
- NFT卡牌遊戲系統開發|NFT盲盒商城搭建技術遊戲
- 鏈動2+1商城系統開發原理(原始碼搭建)原始碼
- NFT交易平臺商城開發系統錢包搭建技術
- 獨立商城系統、原始碼、報價之探究_OctShop原始碼
- java B2B2C Springcloud電子商城系統-Feign負載均衡JavaSpringGCCloud負載
- java B2B2C Springcloud電子商城系統-Spring Cloud學習JavaSpringGCCloud
- ⑦SpringCloud 實戰:引入Sleuth元件,完善服務鏈路跟蹤SpringGCCloud元件
- 美麗天天秒模式開發_美麗天天秒商城系統搭建模式
- java B2B2C Springcloud仿淘寶電子商城系統-宣告式呼叫Feign之請求引數JavaSpringGCCloud
- 基於SpringCloud+vue(ElementUI)+mySQL前後端分離設計之–搭建後臺管理系統SpringGCCloudVueUIMySql後端
- 微商城系統之商家平臺任務自動分析處理系統_OctShop
- java B2B2C Springcloud電子商城系統--------負載均衡(Load Balance)JavaSpringGCCloud負載
- (一)java B2B2C Springcloud電子商城系統 - Spring Cloud簡介JavaSpringGCCloud
- java B2B2C Springcloud電子商城系統-SSO單點登入之OAuth2.0登入流程(2)JavaSpringGCCloudOAuth
- Java多使用者商城系統B2B2C原始碼-(九)服務鏈路追蹤(Spring Cloud Sleuth)Java原始碼SpringCloud
- Android 之 MIT積木搭建系統AndroidMIT