-
Notifications
You must be signed in to change notification settings - Fork 2.6k
Description
jaeger-agent
used to be very useful when Jaeger SDKs were in active use with their default UDP-based exporters. Most OTEL SDKs do not support UDP exporter and are phasing out Jaeger exporters altogether. That makes jaeger-agent
an unnecessary component since it is only designed to receive data via UDP.
Note that having a host-local agent is still an often desirable deployment model, because it simplifies the SDK configuration (SDK only needs to know localhost:port address). However, OTEL Collector is a more suitable component for a host agent now, especially since it can also serve other functions like logs forwarding, not just trace data proxying.
Migration
See https://www.jaegertracing.io/docs/latest/architecture/ for the recommended deployment configurations.
Proposal
Deprecate jaeger-agent
and in 6-months remove it from the code base. This will allow removing a large chunk of code that we won't need to maintain anymore.
- add deprecation warnings to the binary, the docs, and Docker Hub repo
- wait for 6 months
- remove agent from the build pipeline Remove jaeger-agent from distributions #6081
- mark Docker Hub repo as archived
- remove agent from Helm chart and k8s operator
- remove mentioning of the agent from the docs and diagrams Remove references to jaeger-agent documentation#757
- remove imports of jaeger code from otel contrib Remove UDP receivers using Jaeger agent code open-telemetry/opentelemetry-collector-contrib#35765
- remove the code for the agent 🪦 Remove Agent code #6868
- clean up IDLs Remove unused Thrift definitions jaeger-idl#157
Alternatives considered
Accept OTLP
We could deprecate UDP receivers in the agent and instead mount an OTLP receiver. This will allow jaeger-agent
to continue to exist close to its current form. But the benefits of doing so are unclear, while the downsides are that we still need to support a chunk of source code and it creates/causes confusion with the users if the agent is required and why.