Springboot 集成 Zipkin

Zipkin是一种分布式跟踪系统,它有助于收集解决微服务架构中得延迟问题所需的时序数据,它管理这些数据的收集和查找。

下载 官方推荐直接下载打包好的应用,建议使用docker镜像或者jar

使用官方一键脚本

curl -sSL https://zipkin.io/quickstart.sh | bash -s
java -jar zipkin.jar

docker

docker run -d -p 9411:9411 openzipkin/zipkin

访问
任一方式启动后,访问 http://localhost:9411/zipkin/ ,如下图

zipkin

项目集成

2.pom.xml 配置

增加如下依赖

<dependency>
 <groupId>org.springframework.cloud</groupId>
 <artifactId>spring-cloud-starter-zipkin</artifactId>
 <version>2.0.3.RELEASE</version>
</dependency>

如果项目中包含 aspectjweaver 这个jar ,需要指定jar包版本为1.8.10,否则项目启动会出错

<dependency>
 <groupId>org.aspectj</groupId>
 <artifactId>aspectjweaver</artifactId>
 <version>1.8.10</version>
</dependency>

配置采样等参数

#zipkin配置 # 指定了 Zipkin 服务器的地址
spring.zipkin.base-url = http://localhost:9411/ 
#采样率 1.0表示全部采样
spring.sleuth.sampler.probability = 1.0

服务调用以后,就可以看到具体的调用请求时间,但是在这个过程中也碰到了一些问题

  • 如果屏蔽一些接口记录,例如 健康检查会产生大量的无用数据,影响查询
  • 如果使用mysql查询会有一定的影响,官方也不建议使用
  • 使用官方的jar后,无法进行改造,满足不了一些额外的需求
  • 存储数据安全规范等问题

如果使用ES进行存储(建议使用)

# STORAGE_TYPE 指定存储类型 ES_HOSTS es ip 通过逗号隔开,可以使用多个,ES_USERNAME ES用户名 ES_PASSWORD ES密码 ES_INDEX 自定义存储索引
STORAGE_TYPE=elasticsearch ES_HOSTS=172.16.28.56:9200,172.16.28.57:9200  ES_USERNAME=admin ES_PASSWORD=123456 ES_INDEX=zipkin-trace  java -jar /zipkin.jar
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 云计算与服务器整合的价值 分布式计算技术的价格下落以及预算自由已导致了特定应用...
    宇众一一阅读 115评论 0 0
  • 1.Serylet的生命周期概述 什么是生命周期 生命周期:一个对象从创建到销毁的过程 Servlet的生命周期 ...
    提笔执江山阅读 212评论 0 0
  • 塞浦路斯护照,入籍塞浦路斯,塞浦路斯永居,办理塞浦路斯移民、快速入籍 塞浦路斯护照、居留,保加利亚护照、居留,马耳...
    Frank来阅读 288评论 0 0
  • 薛明伦 焦点中级九期 焦作 坚持原创分享第135天 20180709 白皮书P16 SFBT聚焦于当事人如何改变,...
    和颜悦色2018阅读 625评论 0 1
  • 尽管英语从小学到大,但真正学好英语还是很困难。虽然这个好像也是因人而异。 外国人同本国同学习惯用母语交际,不喜欢用...
    花开与浪者阅读 658评论 -1 3