ImagePipe.Telemetry.Trace.OtelIdGenerator (image_pipe v0.1.0)

Copy Markdown View Source

OpenTelemetry SDK id generator that lets OpenTelemetryExporter export untraced requests as true root spans carrying ImagePipe's own trace id.

Configure it on the SDK:

config :opentelemetry, id_generator: ImagePipe.Telemetry.Trace.OtelIdGenerator

It implements the callbacks of the SDK's otel_id_generator behaviour. Ids are random, like the SDK default, except while the exporter replays an ImagePipe root span: it then hands over the trace id ImagePipe minted, so logs and traces keep correlating on one trace id.

Without it, the exporter still forces ImagePipe's trace id, through a synthetic remote parent that tracing backends report as missing.