trace-analysis链路追踪插件
快速上手
1. Maven依赖
在项目的 pom.xml
中添加以下依赖:
xml
<parent>
<groupId>com.yupaits</groupId>
<artifactId>yutool-parent</artifactId>
<version>${yutool.version}</version>
<relativePath/>
</parent>
<dependencies>
<dependency>
<groupId>com.yupaits</groupId>
<artifactId>trace-analysis</artifactId>
</dependency>
</dependencies>
1
2
3
4
5
6
7
8
9
10
11
12
13
2
3
4
5
6
7
8
9
10
11
12
13
2. 配置类
在项目中的FeignConfig
配置类中使用@EnableFeignClients
即可自动注入TraceFeignInterceptor
:
java
@EnableFeignClients
@Configuration
public class FeignConfig {
}
1
2
3
4
5
2
3
4
5
在项目的WebMvcConfig
配置类中添加TraceInterceptor
拦截器:
java
@Configuration
public class WebMvcConfig extends WebMvcConfigurationSupport {
@Override
protected void addInterceptors(InterceptorRegistry registry) {
registry.addInterceptor(new TraceInterceptor()).order(Ordered.HIGHEST_PRECEDENCE);
}
}
1
2
3
4
5
6
7
8
2
3
4
5
6
7
8
设计思路
参考开源日志框架TLog的设计实现,在一条调用链上,前置节点生成并传递TraceId
和SpanId
到后置节点,通过在日志中打印TraceId
和SpanId
标识一条完整的调用链信息。 附:SpanId
生成规则
评论区留言准则:
1. 本评论区禁止传播封建迷信、吸烟酗酒、低俗色情、赌博诈骗等任何违法违规内容。
2. 当他人以不正当方式诱导打赏、私下交易,请谨慎判断,以防人身财产损失。
3. 请勿轻信各类招聘征婚、代练代抽、私下交易、购买礼包码、游戏币等广告信息,谨防网络诈骗。