摘要:腳本位置依賴內采樣率,默認即如需測試時每次都看到則修改為,但對性能有影響,注意上線時修改為合理值運行查詢參考規范推薦推薦谷歌的大規模分布式跟蹤系統分布式服務的
zipkin-server
pom
io.zipkin zipkin-ui 1.39.3 org.springframework.boot spring-boot-starter-jdbc org.springframework.cloud spring-cloud-sleuth-zipkin-stream 1.0.0.RELEASE org.springframework.cloud spring-cloud-starter-stream-rabbit 1.0.0.RELEASE com.h2database h2
application.yaml
spring: rabbitmq: addresses: rabbitmq # datasource: # #腳本位置:依賴spanstore-jdbc-0.9.3.jar內 ## schema: classpath:/mysql.sql # url: jdbc:mysql://zipkin_mysql:3306/zipkin # username: zipkin # password: zipkin # # Switch this on to create the schema on startup: # initialize: true # continueOnError: true sleuth: # not use sleuth stream to trace zipkin server itself enabled: false #refer to org.springframework.cloud.sleuth.instrument.hystrix.SleuthHystrixAutoConfiguration.java hystrix: strategy: enabled: false zipkin: storage: type: mem #mysql #mem
application
@EnableZipkinStreamServer @SpringBootApplication public class ZipkinServerApplication { public static void main(String[] args){ SpringApplication.run(ZipkinServerApplication.class,args); } }zipkin-client
pom
org.springframework.boot spring-boot-starter-aop org.springframework.cloud spring-cloud-sleuth-stream 1.0.0.RELEASE org.springframework.cloud spring-cloud-starter-stream-rabbit 1.0.0.RELEASE org.springframework.cloud spring-cloud-starter-ribbon 1.0.6.RELEASE io.reactivex rxjava io.reactivex rxjava 1.1.5
application.yml
spring: # mq stream format to send trace data rabbitmq: addresses: rabbitmq #zipkin config zipkin: #defult is true,to use zipkin,false:not use enabled: true baseUrl: http://zipkin:9411/ sleuth: sampler: # 采樣率,默認0.1即10%,如需測試時每次都看到trace則修改為1.0,但對性能有影響,注意上線時修改為合理值 percentage: 1.0 hystrix: strategy: enabled: true #https://github.com/ReactiveX/RxJava/issues/2297 rxjava: schedulers: hook: enabled: false # stream format to send trace msg: enable sleuth.stream to use stream # default is true,refer to SleuthStreamAutoConfiguration.java stream: enabled: true # skip tracing urls" pattern,refer to org.springframework.cloud.sleuth.instrument.web.TraceWebAutoConfiguration #web: #skipPattern: /eureka.* # zipkin properties for ServiceApplication.java to debug when there is no zipkin server sample: zipkin: # When enabled=false, traces log to the console. Comment to send to zipkin enabled: true
application
@SpringBootApplication @EnableDiscoveryClient @EnableFeignClients @EnableCircuitBreaker @EnableHystrix @EnableHystrixDashboard @EnableAspectJAutoProxy(proxyTargetClass = true) @EnableAsync public class TraceDemoApplication { @Bean Sampler sampler() { return new AlwaysSampler(); } public static void main(String[] args){ SpringApplication.run(TraceDemoApplication.class,args); } }docker-compose
rabbitmq: image: rabbitmq:management expose: - 5672 - 15672 ports: - 5672:5672 - 15672:15672 zipkin: image: zipkin-server restart: always ports: # Listen port for the Scribe transport - "9410:9410" # Historical port used for the Zipkin HTTP Api - "9411:9411" - "9901:9901" links: - rabbitmq trace_demo: image: trace-demo restart: always ports: - "9998:9998" links: - discovery - config - rabbitmq - zipkin運行
http://192.168.99.100:9411/
查詢
參考opentracing規范
Diving Deeper into ‘Getting Started with Spring Cloud’
Distributed Tracing with Spring Cloud Sleuth and Spring Cloud Zipkin(推薦)
docs-spring-cloud-sleuth(推薦)
Dapper:谷歌的大規模分布式跟蹤系統
分布式服務的Trace——Google Dapper & Twitter Zipkin
Make RxJavaPlugins.reset() public
docker-zipkin
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/26604.html
摘要:一個客戶端請求從發出到被響應經歷了哪些組件哪些微服務請求總時長每個組件所花時長等信息我們有必要了解和收集,以幫助我們定位性能瓶頸進行性能調優,因此監控整個微服務架構的調用鏈十分有必要,本文將闡述如何使用搭建微服務調用鏈追蹤中心。 showImg(https://segmentfault.com/img/remote/1460000014553707); 概述 一個完整的微服務系統包含...
摘要:注本文首發于公眾號,可長按或掃描下面的小心心來訂閱擴展組件是在微服務調用鏈追蹤中心搭建一文中編寫的與通信的工具組件,利用其追蹤微服務調用鏈的,現在我們想追蹤數據庫調用鏈的話,可以擴展一下其功能。 showImg(https://segmentfault.com/img/remote/1460000014751186); 概述 在前面:微服務調用鏈追蹤中心搭建 一文中我們利用Zipki...
摘要:主要問題由于新版本新版本實現鏈路追蹤的一些新特性,使得我在實現的過程上踩了不少坑。同樣一些場景下需要保存鏈路追蹤的數據,以備后面觀察對比,所以同樣需要一個來存儲數據。方法一,通過修改基配置文件后啟動。 主要問題 ???? 由于springboot新版本(2.1.0)、springcloud新版本(Greenwich.M1)實現鏈路追蹤sleuth+zipkin的一些新特性,使得我在實...
摘要:在第三部分中,我們將了解如何在服務網格中啟用分布式跟蹤。在此部署模型中,被部署為服務的在本例中為客戶端。會在服務調用之間添加一些追蹤,并發送到或您的跟蹤提供商目前支持和。這些示例的上游服務是。 本博客是深入研究Envoy Proxy和Istio.io 以及它如何實現更優雅的方式來連接和管理微服務系列文章的一部分。 這是接下來幾個部分的想法(將在發布時更新鏈接): 斷路器(第一部分) ...
閱讀 3049·2021-09-22 15:52
閱讀 2914·2019-08-30 15:55
閱讀 2708·2019-08-30 15:53
閱讀 2461·2019-08-30 13:21
閱讀 1630·2019-08-30 13:10
閱讀 2488·2019-08-26 12:09
閱讀 2575·2019-08-26 10:33
閱讀 1810·2019-08-23 18:06