ContextPropagator
ContextPropagator is a software component or design pattern used to carry contextual information across execution boundaries. It ensures that data such as tracing identifiers, cancellation tokens, deadlines, user identity, locale, or feature flags travels with asynchronous tasks, threads, services, or message boundaries. By separating context from business logic, it helps maintain continuity of information as a request progresses through distributed systems.
The core concept relies on an interface typically described as inject and extract. Inject writes relevant context
In observability and distributed tracing, ContextPropagators play a central role. They propagate trace context and related
Use cases include maintaining request correlation across microservices, propagating cancellation signals through asynchronous work queues, and
Variants and implementations exist across languages. Some environments provide native context objects or AsyncLocal-like facilities that