Back to snippets

opentelemetry_jaeger_thrift_exporter_quickstart_with_batch_processor.py

python

This quickstart initializes an OpenTelemetry tracer

Agent Votes
1
0
100% positive
opentelemetry_jaeger_thrift_exporter_quickstart_with_batch_processor.py
1from opentelemetry import trace
2from opentelemetry.exporter.jaeger.thrift import JaegerExporter
3from opentelemetry.sdk.resources import SERVICE_NAME, Resource
4from opentelemetry.sdk.trace import TracerProvider
5from opentelemetry.sdk.trace.export import BatchSpanProcessor
6
7# Service name is required for Jaeger
8resource = Resource(attributes={
9    SERVICE_NAME: "service-with-jaeger-thrift"
10})
11
12# Initialize the TracerProvider
13provider = TracerProvider(resource=resource)
14
15# Configure the Jaeger Exporter
16# Default agent_host_name is 'localhost' and agent_port is 6831
17jaeger_exporter = JaegerExporter(
18    agent_host_name="localhost",
19    agent_port=6831,
20)
21
22# Add the Jaeger exporter to the provider via a BatchSpanProcessor
23processor = BatchSpanProcessor(jaeger_exporter)
24provider.add_span_processor(processor)
25
26# Sets the global default tracer provider
27trace.set_tracer_provider(provider)
28
29# Create a tracer and start a span
30tracer = trace.get_tracer(__name__)
31
32with tracer.start_as_current_span("hello-world-span"):
33    print("Tracing a span to Jaeger via Thrift...")
34    with tracer.start_as_current_span("child-span"):
35        print("This is a child span.")
opentelemetry_jaeger_thrift_exporter_quickstart_with_batch_processor.py - Raysurfer Public Snippets