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

EKS上Jaeger未接收HotRod应用追踪数据问题求助

排查Jaeger与HotRod追踪数据不显示的问题

核心排查步骤

1. 验证命名空间与服务可达性

  • 确认HotRod与Jaeger Collector是否在同一命名空间:如果HotRod不在observability命名空间,http://jaeger-collector:14250无法解析。解决方式:要么将HotRod部署到observability,要么使用跨命名空间服务地址http://jaeger-collector.observability.svc.cluster.local:14250。
  • 进入HotRod容器内部执行curl -v http://jaeger-collector:14250(或对应跨命名空间地址),确认能连通Collector的gRPC端口(14250为Jaeger gRPC接收端口)。若不通,排查网络策略、Service端口暴露配置。

2. 检查Jaeger Collector配置与日志

  • 查看Collector日志:kubectl logs -n observability <jaeger-collector-pod-name>,搜索是否有接收追踪数据的日志,或格式错误、权限异常等报错信息。
  • 确认Collector启用gRPC端口:检查启动参数是否包含--collector.grpc-server.host-port=:14250(默认启用,但DaemonSet部署可能存在自定义配置)。

3. 检查HotRod环境变量与日志

  • 验证HotRod环境变量:执行kubectl exec <hotrod-pod-name> -- printenv | grep OTEL_EXPORTER_JAEGER_ENDPOINT,确保地址配置正确。
  • 查看HotRod日志:kubectl logs <hotrod-pod-name>,搜索是否有发送追踪数据的错误日志(如连接超时、发送失败),HotRod基于OpenTelemetry SDK,日志会包含exporter相关信息。

4. 验证Jaeger存储后端状态

  • 若使用默认内存存储,确认Collector内存充足,无数据被覆盖情况;生产环境建议切换至Elasticsearch等持久化存储。
  • 查看Jaeger Query日志:kubectl logs -n observability <jaeger-query-pod-name>,确认Query能正常连接存储后端,无查询报错。

5. 排查网络策略与EKS安全组

  • 检查命名空间网络策略:确认observability命名空间允许HotRod所在命名空间的Pod访问Collector的14250端口。
  • 检查Node安全组:确认DaemonSet部署的Jaeger组件所在Node允许Pod间gRPC流量(14250端口)。

快速验证方案

若以上排查无结果,可临时将HotRod部署至observability命名空间,重新配置环境变量为http://jaeger-collector:14250,操作生成追踪数据后再查看,排除跨命名空间访问问题。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.22 07:32:35