SuperAPI AI 工具集

arthas-eagleeye-traceid

部署与运维

查看项目

更新于 10-16 03:13

技能介绍

用途:在线上请求链路中获取当前线程的 EagleEye traceId,用于关联日志、链路分析和问题复现,无需修改代码。

主要能力与思路:EagleEye 的 traceId 可通过 EagleEye.getTraceId() 获取;Arthas watch 支持 OGNL,可直接调用静态方法。

前置检查:确认类是否存在,执行 sc -d com.taobao.eagleeye.EagleEye;若找不到,可能未集成 EagleEye 或类被 relocate/shade。选择确定会被请求线程调用的方法作为观察点,如 Controller 入口、RPC Provider、Filter/Interceptor 的 doFilter/preHandle,避免高频热点方法。

用法:只打印 traceId:watch <类全名> <方法名> '@com.taobao.eagleeye.EagleEye@getTraceId()' -n 5。同时打印参数与 traceId:watch <类全名> <方法名> '{params, @com.taobao.eagleeye.EagleEye@getTraceId()}' -n 5 -x 2。也可用 trace <类全名> <方法名> -n 5,若环境集成 EagleEye,输出头部通常带 trace_id。

结果与限制:建议记录观察点、获取方式、traceId 证据,再用 traceId 去日志或链路系统查询。具体现象以线上效果为准,资料未提供更多平台、收费或效果信息。