SpringCloud学习笔记(十二)_Zipkin全链路监控

这篇具有很好参考价值的文章主要介绍了SpringCloud学习笔记(十二)_Zipkin全链路监控。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

Zipkin是SpringCloud官方推荐的一款分布式链路监控的组件,使用它我们可以得知每一个请求所经过的节点以及耗时等信息,并且它对代码无任何侵入,我们先来看一下Zipkin给我们提供的UI界面都是提供了哪些信息。

如何使用Zipkin

虽然在SpringBoot2.0以后官方不推荐我们自定义Zipkin服务端,而是使用官方提供的jar包。但是作为开发者来说,如果不能去看一看源码,修改一些自定义的配置的话就好像生命掌握在别人手里一样,哪天碰到一个莫名奇妙的bug可就不开心了。所以本例中使用zipkin最新2.11.8release版本来构建一个服务端

1. 创建一个微服务 cloud-demo-zipkin-server
1. pom.xml
1  
2  
3  
4  
5  
6  
7  
8  
9  
10  
11  
12  
13  
14  

|

<dependency>  
            <groupId>io.zipkin.java</groupId>  
            <artifactId>zipkin-server</artifactId>  
            <version>2.11.8</version>  
        </dependency>  
        <dependency>  
            <groupId>io.zipkin.java</groupId>  
            <artifactId>zipkin-autoconfigure-ui</artifactId>  
            <version>2.11.8</version>  
        </dependency>  
        <dependency>  
            <groupId>org.springframework.cloud</groupId>  
            <artifactId>spring-cloud-starter-netflix-eureka-server</artifactId>  
        </dependency>  

—|—

2. yml
1  
2  
3  
4  
5  
6  
7  
8  
9  
10  
11  
12  
13  
14  
15  
16  
17  

|

server:  
  port: 9411  
spring:  
  application:  
    name: zipkin-server  
  
management:  
  metrics:  
    web:  
      server:  
        auto-time-requests: false  
eureka:  
  client:  
    serviceUrl:  
      defaultZone: http://localhost:8761/eureka/  
  instance:  
    prefer-ip-address: true  

—|—

3. 启动注解
1  
2  
3  

|

@EnableEurekaClient  
@EnableZipkinServer  
@SpringBootApplication  

—|—

需要注意的是EnableZipkinServer注解是zipkin2.server.internal包下的。

2. 创建一个微服务 cloud-demo-zipkin-server

改造一下我们原先的两个微服务:cloud-demo-consumer-feign-hystrix,cloud-demo-provider

首先为它们都加上zipkin客户端的依赖

1  
2  
3  
4  
5  
6  
7  
8  

|

<dependency>  
	<groupId>org.springframework.cloud</groupId>  
	<artifactId>spring-cloud-starter-sleuth</artifactId>  
</dependency>  
<dependency>  
	<groupId>org.springframework.cloud</groupId>  
	<artifactId>spring-cloud-starter-zipkin</artifactId>  
</dependency>  

—|—

yml中指定zipkin-server的url,并且指定日志发送方式为web

1  
2  
3  
4  
5  

|

spring:  
  zipkin:  
    base-url: http://localhost:19411  
    sender:  
      type: web  

—|—

3. 查看结果

此时我们所有的准备工作已经做好了,我们启动Eureka、zipkin、cloud-demo-consumer-feign-hystrix、cloud-demo-provider几个微服务,调用几次cloud-demo-consumer-feign-hystrix的user/getUser接口。然后访问http://localhost:9411应该就可以看到zipkin的UI界面。

这个时候可能有的童鞋看到有数据,有的没有数据,这个不是你的配置错了,而是因为zipkin客户端默认收集10%的数据,你可以使用下方的配置更改zipkin的采样频率。

1  
2  
3  
4  

|

spring:  
  sleuth:  
    sampler:  
      probability: 1.0  

—|—

GitHub地址:https://github.com/shiyujun/spring-cloud-demo。代码所在模块:cloud-demo-zipkin-server,cloud-demo-consumer-feign-hystrix,cloud-demo-provider

如果对您有所帮助,请记得帮忙点一个star哦

本文出自http://zhixiang.org.cn,转载请保留。文章来源地址https://www.toymoban.com/news/detail-675687.html

到了这里,关于SpringCloud学习笔记(十二)_Zipkin全链路监控的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包