简述
假设一个服务去调用另一个服务,然后响应特别慢,但又不知道哪里出了些问题,哪里拖慢了时间,这时候就需要一下服务追踪。
主要用到以上两大必备工具,下面来搞一搞
用Dokcer来搭建一个zipkin服务
docker run -d -p 9411:9411 openzipkin/zipkin
然后我们就可以访问一下
界面就是这个样子的啦 下面我们给要使用的项目添加依赖
<!-- <dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-sleuth</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-sleuth-zipkin</artifactId>
</dependency> -->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-zipkin</artifactId>
</dependency>
第三个依赖已经包含了前两个依赖 所以直接以引用第三个
然后在配置里写入配置 指向zipkin地址
第二个参数是指抽样发送给服务的半分比 默认是0.1f(百分之十)
我们就来默认值(百分之百就设置为1)
spring.zipkin.base-url=http://192.168.226.140:9411
spring.sleuth.sampler.probability=1.0
#logging.level.root=debug
spring.zipkin.sender.type: web
spring.zipkin.sender.type: web 这个配置在新版本很重要,貌似是假如没有配置的话他就发送的相关依赖的mq上了
扫描二维码关注公众号,回复:
3515511 查看本文章
而且地址指定值得加http(小坑)
然后我们就能看到这样好看的界面了
同学们好。不要用BUILD-SNAPSHOT版本如果项目里引用了RabbitMQ依赖,会把数据发送到mq, 不会通过http方式发到zipkin服务端了解决第2点,在配置里加上spring.zipkin.sender.type: web
这样就可以看每一个地方消费的时间