spring-cloud-sleuth+zipkin追踪服务实现

在springCloud项目的方式构建服务

spring-cloud-sleuth只要在追踪的服务上配置就可以

spring.zipkin.base-url=http://localhost:8240
spring.sleuth.sampler.percentage=1.0(配置这个就可以)
1.0表示100%追踪//0.7表示70%追踪

1、zipkin-server服务

添加如下依赖(不用保存到数据库则不需要添加数据库依赖)

dependencies>
 <!--使用@EnableZipkinServer注解方式只需要依赖如下两个包-->
 <dependency>
  <groupId>io.zipkin.java</groupId>
  <artifactId>zipkin-server</artifactId>
 </dependency>
 <dependency>
  <groupId>io.zipkin.java</groupId>
  <artifactId>zipkin-autoconfigure-ui</artifactId>
  <scope>runtime</scope>
 </dependency>
 <!--保存到数据库需要如下依赖-->
 <dependency>
  <groupId>io.zipkin.java</groupId>
  <artifactId>zipkin-autoconfigure-storage-mysql</artifactId>
 </dependency>
 <dependency>
  <groupId>mysql</groupId>
  <artifactId>mysql-connector-java</artifactId>
 </dependency>
 <dependency>
  <groupId>org.springframework.boot</groupId>
  <artifactId>spring-boot-starter-jdbc</artifactId>
 </dependency>
启动类

@SpringBootApplication
@EnableZipkinServer //启动ZipkinServer段
public class ZipkinServer {
    public static void main(String[] args) {
        SpringApplication.run(ZipkinServer.class, args);
    }
}
application.properties配置文件:

server.port=8240
spring.application.name=zipkin-server

#zipkin数据保存到数据库中需要进行如下配置
#表示当前程序不使用sleuth
spring.sleuth.enabled=false
#表示zipkin数据存储方式是mysql
zipkin.storage.type=mysql
#数据库脚本创建地址,当有多个是可使用[x]表示集合第几个元素
spring.datasource.schema[0]=classpath:/zipkin.sql
#spring boot数据源配置
spring.datasource.url=jdbc:mysql://localhost:3306/zipkin?autoReconnect=true&useUnicode=true&characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull&useSSL=false
spring.datasource.username=root
spring.datasource.password=123456
spring.datasource.driver-class-name=com.mysql.jdbc.Driver
spring.datasource.initialize=true
spring.datasource.continue-on-error=true
启动zipkin-server 启动后 无异常输出,这样我们的zipkin-server程序就OK了

2.在需要追踪的服务上添加依赖和配置

<dependency>
   <groupId>org.springframework.cloud</groupId>
   <artifactId>spring-cloud-starter-zipkin</artifactId>
</dependency>
#配置zipKin Server的地址
spring.zipkin.base-url=http://localhost:8240
这样就OK了

启动服务的时候(先启动注册中心即可)

最后访问http://localhost:8240


在调用服务即可看到页面上参数的变化

点击Find Traces按钮,我们可以看到调用的链路和耗时情况,点击Dependencies,我们可以看到provider和consumer的调用图

(技术有限仅供参考)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值