Skip to content

docs: Document OpenTelemetry tracing backend and deprecate OpenTracing#2082

Draft
promptless[bot] wants to merge 2 commits intoprodfrom
promptless/opentelemetry-tracing
Draft

docs: Document OpenTelemetry tracing backend and deprecate OpenTracing#2082
promptless[bot] wants to merge 2 commits intoprodfrom
promptless/opentelemetry-tracing

Conversation

@promptless
Copy link
Copy Markdown
Contributor

@promptless promptless bot commented Mar 11, 2026

Open this suggestion in Promptless to view citations and reasoning process

Updates the tracing guide to document the new --tracer opentelemetry backend introduced in v24, which exports traces via OTLP/gRPC. Marks the legacy opentracing-jaeger and opentracing-datadog backends as deprecated (removal in v25), and provides a migration guide with flag mappings for users transitioning to OpenTelemetry.

Trigger Events

vitessio/vitess PR #19619: trace: add OpenTelemetry backend, deprecate OpenTracing

Promptless Research (4 files, 1 GitHub PR)

  • Reviewed vitessio/vitess#19619
  • Viewed .long_term_context/product_knowledge/product_overview.md
  • Viewed .long_term_context/doc_workflow/client_instructions.md
  • Viewed .long_term_context/style/client_style_guide.md
  • Viewed content/en/docs/24.0/user-guides/configuration-advanced/tracing.md

Agent Response

I've reviewed PR #19619 which adds OpenTelemetry tracing support to Vitess and deprecates the legacy OpenTracing backends. This is a significant user-facing change that requires documentation updates.

Summary of Changes

PR #19619 introduces:

  • New --tracer opentelemetry backend that exports traces via OTLP/gRPC
  • New flags: --otel-endpoint (default localhost:4317) and --otel-insecure (default true)
  • --tracing-sampling-rate is now shared across all tracing backends
  • Deprecation of opentracing-jaeger and opentracing-datadog (removal in v25)
  • Deprecation of --jaeger-agent-host and --tracing-sampling-type flags

Documentation Suggestion Created

I've updated the Tracing user guide (content/en/docs/24.0/user-guides/configuration-advanced/tracing.md) to:

  1. Add OpenTelemetry as the recommended backend - Documented the new flags and provided a Docker example for running Jaeger with OTLP support
  2. Mark OpenTracing backends as deprecated - Clear notice that opentracing-jaeger and opentracing-datadog will be removed in v25
  3. Add migration guidance - A simple table showing how to map old flags to new ones for users migrating from OpenTracing to OpenTelemetry
  4. Preserve existing content - Kept the sections on instrumenting queries and inspecting traces, as these remain relevant

The suggestion is ready for review at: https://app.gopromptless.ai/suggestions/1b253e41-1e54-41d0-9090-11da74e454e2


Tip: Tell your friends working on non-commercial open-source projects to apply for free Promptless access at promptless.ai/oss ❤️

Vitess allows you to generate trace events from major server components: `vtgate`, `vttablet`, and `vtctld`. Starting with v24, [OpenTelemetry](https://opentelemetry.io/) is the recommended tracing backend, exporting traces via OTLP/gRPC to any compatible backend. The legacy OpenTracing-based backends (`opentracing-jaeger` and `opentracing-datadog`) are deprecated and will be removed in v25.

## Configuring tracing
## OpenTelemetry (Recommended)
Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Citation: New OpenTelemetry backend implementation in go/trace/otel.go and go/trace/plugin_otel.go. Registers the "opentelemetry" factory with an OTLP/gRPC exporter.
View source


The available OpenTelemetry flags are:

* `--otel-endpoint`: OpenTelemetry collector endpoint (host:port for gRPC). Defaults to `localhost:4317`.
Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Citation: Flag definitions from go/trace/plugin_otel.go: --otel-endpoint (default localhost:4317) and --otel-insecure (default true). The --tracing-sampling-rate flag moved from plugin_jaeger.go to trace.go so all backends can use it.
View source

## OpenTracing (Deprecated)

Now that you have the Jaeger server running, you can add the necessary startup options to `vtgate`, `vttablet` and `vtctld`. This will enable you to send trace spans to the server. The command line options for doing this are the same across `vtgate`, `vttablet` and `vtctld`. Add the following options for a tracing agent running on the `localhost`:
The following OpenTracing-based tracing backends are deprecated as of v24 and will be removed in v25:
Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Citation: Deprecation warnings added to go/trace/plugin_jaeger.go and go/trace/plugin_datadog.go. Both backends now log: tracer "opentracing-jaeger" is deprecated; migrate to "opentelemetry" (OTLP) at startup.
View source

* The tracing sample rate (`--tracing-sampling-rate`) is expressed as a fraction from 0.0 (no sampling) to 1.0 (100% of all events are sent to the server). In the example, this option is set to zero, because we will be passing custom span contexts to the queries we want to trace. In this way, we only instrument the queries we want. This is recommended for large installations because it is typically very hard to organize and consume the volume of tracing events generated by even a small fraction of events from a non-trivial production Vitess system. However, if you just want events to flow automatically without you having to instrument queries, you can set this to a value other than `0.0` and skip the following section on instrumenting queries.
* The tracing sample rate (`--tracing-sampling-rate`) is expressed as a fraction from 0.0 (no sampling) to 1.0 (100% of all events are sent to the server). If set to zero, you can pass custom span contexts to trace only specific queries. This is recommended for large installations because it is typically very hard to organize and consume the volume of tracing events generated by even a small fraction of events from a non-trivial production Vitess system.

### Migrating from OpenTracing to OpenTelemetry
Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Citation: Migration guidance from the PR's changelog entry in changelog/24.0/24.0.0/summary.md: replace --tracer opentracing-jaeger with --tracer opentelemetry and --jaeger-agent-host host:port with --otel-endpoint host:4317.
View source

@netlify
Copy link
Copy Markdown

netlify bot commented Mar 11, 2026

Deploy Preview for vitess ready!

Name Link
🔨 Latest commit 74b2b4c
🔍 Latest deploy log https://app.netlify.com/projects/vitess/deploys/69cbaebea1d55600085f780e
😎 Deploy Preview https://deploy-preview-2082--vitess.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify project configuration.

The PR states the flag defaults to false, not true.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants