Skip to main content

Jaeger

Oodle accepts traces from Jaeger-instrumented services. The recommended approach uses an OpenTelemetry Collector with the Jaeger receiver to convert Jaeger Thrift traces to OTLP and forward them to Oodle.

Prerequisites

  • OODLE_INSTANCE: Your Oodle instance ID. Go to Settings icon -> API Keys page in your Oodle UI to find out. (Oodle UI links: ap1, us1)
  • OODLE_API_KEY: Your Oodle API key for authentication. Go to Settings icon -> API Keys in your Oodle UI to choose an appropriate key. (Oodle UI links: ap1, us1)

Architecture

Jaeger to Oodle architecture

OTel Collector Configuration

Install the OpenTelemetry Collector Contrib distribution (it includes the Jaeger receiver), then add the following configuration:

receivers:
jaeger:
protocols:
thrift_http:
endpoint: "0.0.0.0:14268"

processors:
batch:
timeout: 5s
send_batch_size: 512

exporters:
otlphttp/oodle:
endpoint: "https://<OODLE_INSTANCE>-otlp.collector.oodle.ai"
headers:
"X-OODLE-INSTANCE": "<OODLE_INSTANCE>"
"X-API-KEY": "<OODLE_API_KEY>"

service:
pipelines:
traces:
receivers: [jaeger]
processors: [batch]
exporters: [otlphttp/oodle]

Point your Jaeger clients at the collector's Thrift HTTP endpoint:

http://<collector-host>:14268/api/traces

No changes to your application instrumentation code are required.

Migrating from a Jaeger Backend

If you already run a Jaeger backend (all-in-one, collector, or query), you can migrate to Oodle in three steps:

  1. Deploy the OTel Collector with the configuration above alongside (or in place of) the Jaeger collector.
  2. Reconfigure your Jaeger clients or agents to send to the OTel Collector instead of the Jaeger collector.
  3. No application code changes are needed: the Jaeger SDK continues to emit Thrift spans as before.

Demo

For a complete working example, see the Jaeger demo in the oodle-onboarding repository.


Support

If you need assistance or have any questions, please reach out to us through: