haproxy/addons/otel/include
Miroslav Zagorac ea9d05de02 MEDIUM: otel: added context propagation via carrier interfaces
Added the span context injection and extraction layer that bridges the
OTel C wrapper's propagation API with HAProxy's HTTP headers and text map
carriers.

The new otelc.c module implements four public functions that wrap the
OTel C wrapper's context propagation methods: flt_otel_inject_text_map()
and flt_otel_inject_http_headers() serialize a span's context into
a text map or HTTP headers carrier for outbound propagation, while
flt_otel_extract_text_map() and flt_otel_extract_http_headers()
deserialize an inbound carrier into an otelc_span_context for parent
linking.

Each direction uses a pair of callbacks registered on the carrier
structure.  The injection writers (flt_otel_text_map_writer_set_cb and
flt_otel_http_headers_writer_set_cb) store key-value pairs emitted by the
SDK into the carrier's text map via OTELC_TEXT_MAP_ADD().  The extraction
readers (flt_otel_text_map_reader_foreach_key_cb and
flt_otel_http_headers_reader_foreach_key_cb) iterate the carrier's text
map entries and pass each pair to the SDK's handler callback.

The scope context initialization in flt_otel_scope_context_init() now
calls flt_otel_extract_http_headers() to extract the span context from the
provided text map carrier and stores it in the scope context structure,
making extracted contexts available for parent linking in subsequent span
creation.
2026-04-13 09:23:26 +02:00
..
conf.h MEDIUM: otel: implemented filter callbacks and event dispatcher 2026-04-13 09:23:26 +02:00
conf_funcs.h MEDIUM: otel: added configuration and utility layer 2026-04-13 09:23:26 +02:00
config.h MEDIUM: otel: implemented scope execution and span management 2026-04-13 09:23:26 +02:00
debug.h MEDIUM: otel: implemented filter callbacks and event dispatcher 2026-04-13 09:23:26 +02:00
define.h MEDIUM: otel: implemented scope execution and span management 2026-04-13 09:23:26 +02:00
event.h MEDIUM: otel: implemented scope execution and span management 2026-04-13 09:23:26 +02:00
filter.h MEDIUM: otel: wired OTel C wrapper library integration 2026-04-13 09:23:26 +02:00
include.h MEDIUM: otel: added context propagation via carrier interfaces 2026-04-13 09:23:26 +02:00
otelc.h MEDIUM: otel: added context propagation via carrier interfaces 2026-04-13 09:23:26 +02:00
parser.h MEDIUM: otel: added configuration parser and event model 2026-04-13 09:23:26 +02:00
pool.h MEDIUM: otel: added memory pool and runtime scope layer 2026-04-13 09:23:26 +02:00
scope.h MEDIUM: otel: implemented scope execution and span management 2026-04-13 09:23:26 +02:00
util.h MEDIUM: otel: implemented scope execution and span management 2026-04-13 09:23:26 +02:00