微服务架构上经过业务来划分服务的,经过REST调用,对外暴露的一个接口,可能须要不少个服务协同才能完成这个接口功能,若是链路上任何一个服务出现问题或者网络超时,都会造成致使接口调用失败。随着业务的不断扩张,服务之间互相调用会愈来愈复杂,在项目中引入sleuth能够方便程序进行调试。java
首先建立一个ZipkinServer工程,负责收集展现调用信息,对于gradle项目,引入依赖web
dependencies {
compile('org.springframework.boot:spring-boot-starter-web')
runtime('io.zipkin.java:zipkin-autoconfigure-ui')
compile('io.zipkin.java:zipkin-server')
testCompile('org.springframework.boot:spring-boot-starter-test')
}spring
在其程序入口类, 加上注解@EnableZipkinServer,开启ZipkinServer的功能,并在配置文件中指定服务端口网络
对于须要sleuth进行跟踪的服务,一样须要引入依赖架构
compile('org.springframework.cloud:spring-cloud-starter-zipkin')分布式
而后在服务的配置文件中加入配置spring-boot
spring: 微服务
zipkin:
base-url: http://zipkin-server:9010大数据
在rancher启动服务时将服务连接指向zipkinservergradle
访问zipkinserver工程暴露出来的端口,便可使用图形界面查看链路追踪的状况