链路追踪工具
链路追踪工具
简介:
Zipkin:是Twitter开源的调用链分析工具,目前基于springcloud sleuth得到了广泛的使用,特点是轻量,使用部署简单。
Pinpoint:是韩国人开源的基于字节码注入的调用链分析,以及应用监控分析工具。特点是支持多种插件,UI功能强大,接入端无代码侵入。
SkyWalking:是本土开源的基于字节码注入的调用链分析,以及应用监控分析工具。特点是支持多种插件,UI功能较强,接入端无代码侵入。目前已加入Apache孵化器。
CAT:是大众点评开源的基于编码和配置的调用链分析,应用监控分析,日志采集,监控报警等一系列的监控平台工具。
基本原理:
类别 | 实现方式 |
Zipkin | 拦截请求,发送(HTTP,mq)数据至zipkin服务 |
Pinpoint | java探针,字节码增强 |
SkyWalking | java探针,字节码增强 |
CAT | 代码埋点(拦截器,注解,过滤器等) |
接入:
类别 | 接入方式 | agent到collector的协议 | OpenTracing |
Zipkin | 基于linkerd或者sleuth方式,引入配置即可 | http,MQ | √ |
Pinpoint | javaagent字节码 | thrift | × |
SkyWalking | javaagent字节码 | gRPC | √ |
CAT | 代码侵入 | http/tcp | × |
分析:
类别 | 颗粒度 | 全局调用统计 | traceid查询 | 报警 | JVM监控 |
Zipkin | 接口级 | × | √ | × | × |
Pinpoint | 方法级 | √ | × | √ | × |
SkyWalking | 方法级 | √ | √ | √ | √ |
CAT | 代码级 | √ | × | √ | √ |
数据存储:
类型 | 数据存储 |
Zipkin | ES,mysql,Cassandra,内存 |
Pinpoint | Hbase |
SkyWalking | h2、mysql、ElasticSearch |
CAT | mysql,hdfs |