guides
Distributed Tracing
OpenTelemetry, Jaeger, and Zipkin integration with Pyvorin.
Published May 30, 2026
OpenTelemetry Spans
from opentelemetry import trace
tracer = trace.get_tracer(__name__)
def process_with_trace(data):
with tracer.start_as_current_span("process") as span:
span.set_attribute("record.count", len(data))
result = compiled_process(data)
span.set_attribute("result.size", len(result))
return result
Context Propagation
Pyvorin does not modify tracing context. Propagate trace headers through your HTTP client or message broker as usual.
Jaeger Export
from opentelemetry.exporter.jaeger.thrift import JaegerExporter
exporter = JaegerExporter(agent_host_name="localhost", agent_port=6831)