首页 > 解决方案 > 如果使用 ingressgateway istio,Trace ID 不会转发到 zipkin

问题描述

我将 istio 与入口网关一起使用,并添加了 zipkin 跟踪。我所有的应用程序都使用带有 sleuth zipkin 的 spring boot。

我已经部署了 2 个 zipkin 进行测试

spring boot 配置指向 zipkin 命名空间,总是采样配置。

问题是当我使用入口网关时,跟踪 ID 看起来像请求 ID,它确实传播到我的子系统。但是当我查询 zipkin(从 istio 文档部署在 istio-system 中,并手动部署到另一个命名空间)时,跟踪 id 不存在。

有趣的是,当我对最外面的系统进行端口转发并使用 grpc 启动 spring boot 时,跟踪 id 正在传播到子系统,并且它确实显示在 zipkin 仪表板中。

尽管在使用 ingressgateway 和 port-forward 直接 grpc 调用时跟踪 id 不同:

入口网关:0672471566b9305f7dcaadecaf1a8c71 直接呼叫:cdc337ec90b8c085

谢谢!

标签: istiospring-cloud-sleuthzipkin

解决方案


推荐阅读