Skip to content

Fan-out to a second backend

Oriel is a terminal OTLP sink: it stores what it receives and does not forward telemetry onward. To send the same data to Oriel and a second backend (a migration in progress, a compliance archive, a vendor trial), run a Collector upstream of both and list two exporters in the pipeline. The Collector copies each batch to every exporter.

  • An OpenTelemetry Collector upstream of Oriel
  • Separate credentials for Oriel and the second backend
  • A retry and queue policy sized for the slower backend
receivers:
otlp:
protocols:
grpc:
http:
processors:
batch:
exporters:
otlp/oriel:
endpoint: oriel.example.com:4317
headers:
Authorization: Bearer ${ORIEL_INGEST_TOKEN}
otlphttp/other:
endpoint: https://other-backend.example.com
headers:
Authorization: Bearer ${OTHER_BACKEND_TOKEN}
service:
pipelines:
traces:
receivers: [otlp]
processors: [batch]
exporters: [otlp/oriel, otlphttp/other]
metrics:
receivers: [otlp]
processors: [batch]
exporters: [otlp/oriel, otlphttp/other]
logs:
receivers: [otlp]
processors: [batch]
exporters: [otlp/oriel, otlphttp/other]

Exporters in a pipeline are independent: a fan-out continues to the healthy backend if the other is unreachable, and each exporter keeps its own retry queue. Give every backend its own credentials, and tune batch and per-exporter sending_queue settings if one backend is slower than the other.

Run a small query for each signal you exported:

spans | limit 20
logs | limit 20
metrics | limit 20

If Oriel has data but the second backend does not, inspect that exporter’s retry queue and credentials in the Collector logs.