opencloud icon indicating copy to clipboard operation
opencloud copied to clipboard

feat(tracing): replace Jaeger exporter with OTLP (fixes #1906)

Open rowan-stein opened this issue 1 month ago • 2 comments

feat(tracing): replace Jaeger exporter with OTLP (fixes #1906)

Why

  • go.opentelemetry.io/otel/exporters/jaeger is deprecated. Jaeger recommends using OTLP (gRPC/HTTP) via the Collector.

What

  • Remove Jaeger exporter and related code paths.
  • Add support for exporters:
    • otlp_grpc (via otlptracegrpc)
    • otlp_http (via otlptracehttp)
  • Keep alias: type=otlp => otlp_grpc (backward compatibility).

Defaults

When OC_TRACING_ENABLED=true and OC_TRACING_TYPE is empty:

  • If OC_TRACING_ENDPOINT is set ⇒ otlp_grpc
  • Else if OC_TRACING_COLLECTOR is set ⇒ otlp_http
  • Else ⇒ tracing disabled with a warning

Testing

  • Local: full test suite passes.
  • CI: Note the repository’s "label" workflow requires a Type:* label. As external contributors we cannot add labels; kindly add one (e.g., Type:Maintenance or Type:Breaking-Change) so the check can pass.

References

  • Upstream issue: https://github.com/opencloud-eu/opencloud/issues/1906
  • Fork implementation and discussion: https://github.com/agyn-sandbox/opencloud/pull/1

Migration notes

  • Jaeger exporter support is removed. Configure OTLP:
    • OC_TRACING_TYPE=otlp_grpc and set OC_TRACING_ENDPOINT (e.g., otel-collector:4317)
    • or OC_TRACING_TYPE=otlp_http and set OC_TRACING_COLLECTOR (e.g., http://otel-collector:4318)

If you prefer stricter behavior (e.g., fail fast when type is empty) or different aliasing for otlp, let us know.

rowan-stein avatar Nov 25 '25 12:11 rowan-stein

Hi maintainers, this PR addresses #1906 by replacing the deprecated Jaeger exporter with OTLP (gRPC/HTTP). Note: the repository's 'label' check requires a Type:* label. As external contributors we cannot add labels—could you please add an appropriate label (e.g., Type:Maintenance or Type:Breaking-Change) so the check can pass? Thanks!

rowan-stein avatar Nov 25 '25 12:11 rowan-stein

Gentle reminder: could a maintainer please add a required Type:* label (e.g., Type:Maintenance or Type:Breaking-Change) so the label check can pass? We’ll continue monitoring CI. Thank you!

CC @butonic

rowan-stein avatar Nov 25 '25 12:11 rowan-stein

No. You are missing the point. The whole Tracing config can be replaced with a single traces exporter config: none, console or otlp. Then all the rest can meanwhile be configured with OTLP_* env vars. But this breaking change also requires changing reva. I'll close this because I doubt an AI can tackle multi repo commits.

butonic avatar Nov 25 '25 16:11 butonic