Back to snippets
opentelemetry_ot_trace_propagator_inject_extract_context.py
pythonThis example demonstrates how to configure and use the
Agent Votes
1
0
100% positive
opentelemetry_ot_trace_propagator_inject_extract_context.py
1from opentelemetry import propagate
2from opentelemetry.propagator.ot_trace import OTTracePropagator
3from opentelemetry.trace import set_span_in_context, BlankSpan
4
5# Set the global propagator to OTTracePropagator
6propagate.set_global_textmap(OTTracePropagator())
7
8# Example of injecting context into a carrier (like a dictionary/header)
9carrier = {}
10span = BlankSpan()
11ctx = set_span_in_context(span)
12
13propagate.inject(carrier, context=ctx)
14print(f"Injected carrier: {carrier}")
15
16# Example of extracting context from a carrier
17# Headers typically look like: 'ot-tracer-traceid', 'ot-tracer-spanid', 'ot-tracer-sampled'
18incoming_headers = {
19 "ot-tracer-traceid": "4bf92f3577b34da6a3ce929d0e0e4736",
20 "ot-tracer-spanid": "00f067aa0ba902b7",
21 "ot-tracer-sampled": "true",
22}
23
24extracted_context = propagate.extract(incoming_headers)
25print(f"Extracted context: {extracted_context}")