gpt4 book ai didi

java - 无法在 jaeger ui 中看到服务名称 - Java spring 应用程序

转载 作者:塔克拉玛干 更新时间:2023-11-02 20:23:45 27 4
gpt4 key购买 nike

我正在尝试将 jaeger tracing 集成到我的 java spring 应用程序中。我在配置文件中添加了以下代码:

@ bean 公共(public) io.opentracing.Tracer jaegerTracer(){

    Sender sender = new HttpSender("http://localhost:14268/api/traces");
com.uber.jaeger.Configuration.SenderConfiguration senderConfiguration = new com.uber.jaeger.Configuration
.SenderConfiguration.Builder()
.sender(sender)
.build();

return new com.uber.jaeger.Configuration("pilot-tracking",
new com.uber.jaeger.Configuration.SamplerConfiguration(ProbabilisticSampler.TYPE, 1),
new com.uber.jaeger.Configuration.ReporterConfiguration(sender)).getTracer();
}

并使用以下 docker 命令:

docker run -d -p 5775:5775/udp -p 6831:6831/udp -p 6832:6832/udp -p 5778:5778 -p 16686:16686 -p 14268:14268 jaegertracing/一体机:最新的

仍然,我无法在 jaeger-ui 中找到我的服务

点击此网址后: http://localhost:5778/?service=pilot-tracking输出是:tcollector 错误:tchannel 错误 ErrCodeBadRequest:没有服务“jaeger-collector”和方法“SamplingManager::getSamplingStrategy”的处理程序

请帮忙!!

最佳答案

这似乎有点老了,很难说出哪里出了问题。我的第一个猜测是采样策略,因为 Jaeger 以千分之一的轨迹采样,但看起来您确实设置了它。


JAEGER_SAMPLER_TYPE=常量
JAEGER_SAMPLER_PARAM=1

我建议您首先使用一个简单的 Configuration.fromEnv().getTracer() 来获取您的跟踪器。然后,通过环境变量控制它,可能将 JAEGER_REPORTER_LOG_SPANS 设置为 true。使用此选项,您应该能够在 Jaeger 发出跨度时在日志中看到。

您还可以将 --log-level=debug 选项设置为代理和收集器(或在您的情况下为一体),以查看这些组件何时从客户。

关于java - 无法在 jaeger ui 中看到服务名称 - Java spring 应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48423910/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com