Is Remote sampling works without Jaeger-agent sampling port 5778? #4142
Unanswered
Narenderbhcu
asked this question in
Q&A
Replies: 1 comment 22 replies
-
I am not sure about OTEL collector, are you sure it implements the sampling strategy endpoint on the same port as the port used to accept trace data? With Jaeger, you do not need the agent to serve sampling strategies, Jaeger collector exposes an HTTP endpoint https://www.jaegertracing.io/docs/1.41/deployment/#collector |
Beta Was this translation helpful? Give feedback.
22 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
What happened?
Hi, We would like to know how remote sampling works without jaeger-agent sampling report?
we have configured remote sampling using OTEL GO SDK as below(intstead of jaeger-agent port 5778 we have used opentelemetry collector ports 4317 and 4318 but which is not working.
as per below link, both Jaeger Agent and OpenTelemetry Collector implement the Jaeger sampling service endpoint.
[https://github.com/open-telemetry/opentelemetry-go-contrib/tree/main/samplers/jaegerremote]
jaegerRemoteSampler := jaegerremote.New(
"your-service-name",
jaegerremote.WithSamplingServerURL("http://{sampling_service_host_name}:5778"),
jaegerremote.WithSamplingRefreshInterval(10*time.Second),
jaegerremote.WithInitialSampler(trace.TraceIDRatioBased(0.5)),
)
tp := trace.NewTracerProvider(
trace.WithSampler(jaegerRemoteSampler),
...
)
otel.SetTracerProvider(tp)
I am trying to use opentelemetry collector sampling port instead of jaeger agent port "http://{sampling_service_host_name}:5778", but I am unable to fetch sampling strategy information from the backend.
Tried with
jaegerremote.WithSamplingServerURL("http://{sampling_service_host_name}:4317"), and jaegerremote.WithSamplingServerURL("http://{sampling_service_host_name}:4318"),
but not working, please suggest your opinion.
Steps to reproduce
Try to generate traces using otel sdk by applying remote sampling as below and you can see that remote sampling not working as expected.
https://github.com/open-telemetry/opentelemetry-go-contrib/tree/main/samplers/jaegerremote
jaegerRemoteSampler := jaegerremote.New(
"your-service-name",
jaegerremote.WithSamplingServerURL("http://{sampling_service_host_name}:4317"),
or
jaegerremote.WithSamplingServerURL("http://{sampling_service_host_name}:4318"),
jaegerremote.WithSamplingRefreshInterval(10*time.Second),
jaegerremote.WithInitialSampler(trace.TraceIDRatioBased(0.5)),
)
Expected behavior
Jaeger should support remote sampling without Jaeger-agent sampling port 5778.
Relevant log output
No response
Screenshot
No response
Additional context
No response
Jaeger backend version
v1.38.0
SDK
Opentelemetry Go SDK
Pipeline
OTEL SDK -> OTEL Collector -> Jaeger Collector -> Elasticsearch -> Jaeger UI
Stogage backend
Elasticsearch
Operating system
Linux
Deployment model
kubenetes
Deployment configs
No response
Beta Was this translation helpful? Give feedback.
All reactions