欢迎来到代码驿站!

JAVA代码

当前位置:首页 > 软件编程 > JAVA代码

详解spring cloud分布式整合zipkin的链路跟踪

时间:2021-04-13 09:15:39|栏目:JAVA代码|点击:

为什么使用zipkin?

上篇主要写了:spring cloud分布式日志链路跟踪

从上篇中可以看出服务之间的调用,假设现在有十几台服务,那么在查找日志的时候比较繁琐、复杂,而且在查看调用的时候也会像蜘蛛网一样,量太大。

这时候zipkin可以把链路调用整个过程给升级起来,只需要到一个地方去查找,就可以知道哪一步出错。

zipkin也分为服务器和客户端,服务器就是zipkin,微服务就是客户端。

首先,建立服务器zipkin

在此服务build.gradle加上zipkin的依赖:

compile 'io.zipkin.java:zipkin-server'
  compile 'io.zipkin.java:zipkin-autoconfigure-ui'

这里可以看到它不是属于spring中的

在application.yml配置中:

server:
 port: 9999
spring:
 application:
  name: zipkin-server #注册到注册中心的名字,可以映射ip

配置文件非常简单

启动类:

@EnableZipkinServer //表示Zipkin是服务器
@SpringBootApplication
public class ZipkinServerProdiver {
  public static void main(String[] args) {
    SpringApplication.run(ZipkinServerProdiver.class,args);
  }
}

接着在对于zipkin服务器的客户端build.gradle中加上依赖:

 //表示zipkin的客户端
  compile group: 'org.springframework.cloud', name: 'spring-cloud-sleuth-zipkin'

这里用到那几个zipkin的客户端就在里面加入依赖

当然在客户端配置文件application.yml中,也要加入zipkin的配置:

spring:
 zipkin:
  base-url: http://localhost:9999 #代表字zipkin服务器地址
 sleuth:
  sampler:
   percentage: 1.0 #0.1-1.0 也就是代表链路跟踪的数据上传的概率有多大

启动zipkin服务器:http://localhost:9999

看到这样就证明启动成功啦

下面启动项目,执行微服务之间的调用,并刷新zipkin服务器:

这里可以看到我执行了4次,出现了4个链路,我是根据时间来查找的,也可以根据控制台或日志中的链路编码来查找:

我在控制台随便拿一个进行查找:

可以看到查找到了

zipkin也有链路分析:

它也可以时间和链路编码来查找,这样我们想查找哪一时间段的或精准到哪一条就非常方便了

上一篇:Springmvc 4.x利用@ResponseBody返回Json数据的方法

栏    目:JAVA代码

下一篇:JDK线程池和Spring线程池的使用实例解析

本文标题:详解spring cloud分布式整合zipkin的链路跟踪

本文地址:http://www.codeinn.net/misctech/100601.html

推荐教程

广告投放 | 联系我们 | 版权申明

重要申明:本站所有的文章、图片、评论等,均由网友发表或上传并维护或收集自网络,属个人行为,与本站立场无关。

如果侵犯了您的权利,请与我们联系,我们将在24小时内进行处理、任何非本站因素导致的法律后果,本站均不负任何责任。

联系QQ:914707363 | 邮箱:codeinn#126.com(#换成@)

Copyright © 2020 代码驿站 版权所有