关于jaegeropentracing的Java-client做记录如下:
1.依赖jar包
<!-- 以下jar包是jaegeropentracing依赖的日志jar -->
slf4j-api <version>1.7.25</version>
slf4j-log4j12 <version>1.7.25</version>
<!-- 以下是opentracing的jar -->
opentracing-api <version>0.31.0</version>
<!-- 以下jar包是jaegeropentracing依赖的日志jar -->
aeger-core <version>0.30.4</version>
jaeger-thrift <version>0.30.4</version>
<!-- client为非必须依赖,可用来查看jaegeropentracing的版本号 -->
jaeger-client <version>0.30.4</version>
2.Java-client 代码示例:
<A>.调用示例1
注:该方式client会侵入已有业务代码,如需在不改动原有业务代码的前提下,是否考虑可以使用拦截器/过滤器?(未验证)
<B>.使用Spring AOP
<1>添加spring依赖jar包
<2>配置文件
web.xml配置如下;
springmvc-servlet.xml配置如下:
TestController.java代码如下;
TestServiceImpl.java代码如下:
AOPDemo.java代码如下:
如果需要统计原有程序,只需要修改该类(或者定义新的切面及连接点)即可,不需要入侵原有业务代码
项目目录结构如下:
注:使用Spring AOP 可以解决上述入侵原有业务代码的问题,只需要定义新的切面、连接点即可
后续会整理下跨系统调用时的完整追踪链的实例