通過dubbo的Filter來實作dubbo調用鍊的跟蹤資訊,跟蹤實作類為DrpcClientInterceptor和DrpcServerInterceptor,分别實作消費方與提供方的服務跟蹤。
git項目位址:https://github.com/blacklau/http-dubbo-zipkin(點選打開連結),請下載下傳使用。
本工程通過模拟訂單詳情的查詢,示範系統的調用鍊跟蹤,跟蹤資訊包括調用服務及請求參數。 涉及的各工程作用:
louie-webapi:向外部提供http調用,傳回json;
louie-order:模拟訂單系統,查詢訂單詳情;
louie-account:模拟賬戶系統,查詢賬戶資訊,調用鍊如圖
使用:
1、下載下傳zipkin并運作 wget -O zipkin.jar 'https://search.maven.org/remote_content?g=io.zipkin.java&a=zipkin-server&v=LATEST&c=exec' java -jar zipkin.jar
2、下載下傳本項目并安裝 mvn install
3、将生成的三個war包部署到Tomcat
4、http調用 http://localhost:8080/louie-webapi/service.do?service=order.customer.orderInfo&data={"token":"jkfldjsliewklkklls","id":89}
service參數為Service注解值加上方法名,為對應提供的rpc服務,data參數為rpc請求參數
打開zipkin ui,http://localhost:9411/,檢視調用鍊資訊,
span資訊,帶請求參數