You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Spring Cloud Sleuth的TracingFilter已弃用,求MockMvc注入的替代方案

方案说明

场景1:使用Spring Cloud Sleuth 3.x版本

TracingFilter的直接替代类为TraceFilter,替换注入类即可,用法和原逻辑完全一致:

@Autowired
private TraceFilter traceFilter;

@BeforeAll
void init() throws IOException, URISyntaxException {
    this.mockMvc = MockMvcBuilders.webAppContextSetup(this.context).apply(springSecurity())
            .addFilters(this.traceFilter)
            .build();
}

场景2:已升级至Spring Boot 3.x + Micrometer Tracing(Spring Cloud Sleuth已停止维护并入Micrometer项目)

链路追踪对应的Filter为ServerHttpObservationFilter,直接注入使用即可:

@Autowired
private ServerHttpObservationFilter tracingFilter;

@BeforeAll
void init() throws IOException, URISyntaxException {
    this.mockMvc = MockMvcBuilders.webAppContextSetup(this.context).apply(springSecurity())
            .addFilters(this.tracingFilter)
            .build();
}

注意事项

如果启动时提示找不到对应Filter的Bean,需要确认已引入对应链路追踪的starter依赖:

  • Sleuth场景需要引入spring-cloud-starter-sleuth
  • Micrometer Tracing场景需要引入micrometer-tracing-starter及对应桥接依赖(如micrometer-tracing-bridge-brave),自动配置才会注册对应的Filter到Spring容器中。

内容的提问来源于stack exchange,提问作者Jonathan Chevalier

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.03 12:30:04