Every trace, metric, and log fans out to two backends at once: the legacy agent keeps receiving exactly what it always has, and the new OTLP/HTTP backend receives the same stream, so dashboards and alerts can be compared side by side before anything is cut over. A resource processor stamps deployment.environment: production on the way through.
Point otlp/legacy at your existing agent and set NEW_BACKEND_OTLP_ENDPOINT for the new destination. When the comparison holds, delete the otlp/legacy exporter from the pipelines and the migration is done. The fan-out is the whole flow.
Use this flow
Open the config in Telflo and it becomes a working pipeline on the canvas: adapt what's specific to you, test it against recorded traffic, and push it to your fleet over OpAMP. Free account, no card.
Components
What's in it, and why
Single entry point for all three signals from SDKs and downstream collectors, over gRPC and HTTP.
Runs first so backpressure reaches the receiver rather than the collector being OOM-killed when one backend slows down.
Stamps deployment.environment: production on every record so both backends see the same resource attributes.
Batches on a 10 second timeout before the fan-out, so both exporters receive the same batches.
Keeps the existing agent receiving exactly what it always has, over OTLP gRPC.
Sends an identical copy of every record to the new backend named by NEW_BACKEND_OTLP_ENDPOINT.
Notes
Gotchas
- 1
Every exporter in a pipeline receives a full copy of the data, so this doubles egress volume and, on per-GB pricing, doubles the bill for as long as both run.
- 2
otlp/legacypoints atlegacy-agent.internal:4317with TLS disabled, which is fine inside a trusted network and not fine across one. - 3
Neither exporter declares a persistent queue here, so a restart drops whatever was buffered for both backends.
- 4
A slow backend applies backpressure to the whole pipeline, so the healthy destination is affected by the unhealthy one.
More flows
Related flows
Move from Datadog to Elastic without a monitoring gap
Accepts traffic from the Datadog Agents you already run and dual-ships every trace, metric, and log to both Datadog and Elastic, so the two can be compared on identical data before you cut over.
Move from Datadog to ClickStack without a monitoring gap
Accepts traffic from the Datadog Agents you already run and dual-ships every trace, metric, and log to both Datadog and ClickStack, so the two can be compared on identical data before you cut over.
Replace vendor agents on your VM fleet
Scrapes CPU, memory, load, disk, filesystem, and network metrics plus system and application logs on every VM.
Test it before your fleet runs it
Free account, no card. Open this flow in the editor, adapt it, and see what it does to real data before anything ships.