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

Spring Boot整合Sleuth+Zipkin无链路追踪数据问题排查求助

问题根因说明

你观察到日志中X-Span-Export字段为false,说明Sleuth没有将当前span标记为可导出状态,结合你使用的版本和依赖配置,问题出在依赖冗余、采样配置冲突、cloud-stream依赖的默认sender覆盖三个方面,按以下步骤调整即可:


修复步骤

  • 清理冗余依赖
    spring-cloud-starter-zipkin 已经内置了sleuth核心依赖和zipkin适配依赖,你重复引入的3个同功能依赖会触发版本兼容问题,仅保留以下一个依赖即可:
implementation "org.springframework.cloud:spring-cloud-starter-zipkin:2.2.6.RELEASE"
  • 修正采样配置
    你所使用的Sleuth 2.2.x版本(对应Hoxton发布版)中,spring.sleuth.sampler.rate 是速率采样器的专属参数,和概率采样器参数spring.sleuth.sampler.probability不能同时配置,同时配置会导致采样策略冲突,删除配置中的spring.sleuth.sampler.rate=100行,仅保留spring.sleuth.sampler.probability=1.0即可实现100%采样。

  • 解决cloud-stream的sender冲突
    引入spring-cloud-stream依赖后,Sleuth默认会优先使用消息中间件作为Zipkin数据的发送通道,即使你配置了spring.zipkin.sender.type=web也会被覆盖,需要显式关闭stream的zipkin整合,在application.properties中新增以下配置:

spring.sleuth.zipkin.stream.enabled=false

也可以在依赖引入时直接排除stream相关的zipkin适配包:

implementation('org.springframework.cloud:spring-cloud-starter-zipkin:2.2.6.RELEASE') {
    exclude group: 'org.springframework.cloud', module: 'spring-cloud-sleuth-zipkin-stream'
}
  • 可选校验项
    • 确认服务部署节点可以正常访问你配置的Zipkin地址http://localhost:9411,如果是容器/多机器部署,需要将localhost替换为Zipkin服务所在节点的实际可访问IP
    • 检查是否有自定义Sampler Bean覆盖了默认采样规则,或者配置了spring.sleuth.web.skip-pattern跳过了所有请求的采样

调整完成后重启服务,X-Span-Export字段会变为true,Zipkin即可正常接收链路数据。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.01 10:54:04