The current implementation of the otel propagator, for the span processor otel integration, limits are ability to reuse the propagator for OTLP.
The propagator currently fetches the trace and baggage headers by fetching an active span from the span map. The correct approach should be to follow this spec and store the dsc on context, so that the propagator can fetch it from there and not rely on span map.
This is also an improvement in making the propagator itself work lock-free.
To make the propagator reusable the otlp package should be under sentry-go/otel/otlp and the propagator should be under sentry-go/otel/internal/common .
The current implementation of the otel propagator, for the span processor otel integration, limits are ability to reuse the propagator for OTLP.
The propagator currently fetches the trace and baggage headers by fetching an active span from the span map. The correct approach should be to follow this spec and store the dsc on context, so that the propagator can fetch it from there and not rely on span map.
This is also an improvement in making the propagator itself work lock-free.
To make the propagator reusable the otlp package should be under
sentry-go/otel/otlpand the propagator should be undersentry-go/otel/internal/common.