Module otel_propagator

A Propagator injects or extracts data from a Context so information like baggage and trace context can be transported along with cross service requests, like an HTTP request.

This module defines the otel_propagator behaviour.
Required callback functions: inject/2, inject_from/3, extract/2, extract_to/3.

Description

A Propagator injects or extracts data from a Context so information like baggage and trace context can be transported along with cross service requests, like an HTTP request.

Propagators are defined based on the type of encoding they inject and extract. At this time there is only a TextMapPropagator, otel_propagator_text_map, which works on ASCII keys and values.

This behaviour is only for defining the callbacks used by each propagator per type and is only used by developers adding a new type of propagator (like for binary protocols), not implementations of propagators themselves (like B3 or W3C TraceContext).

Users configure and call propagators based on their type. See the docs for otel_propagator_text_map for more details.

Data Types

builtin()

builtin() = trace_context | tracecontext | b3 | b3multi | baggage

jaeger

carrier()

carrier() = term()

t()

t() = builtin() | module() | {module(), term()}


Generated by EDoc