Back to snippets
opentelemetry_jaeger_grpc_exporter_tracer_quickstart.py
pythonThis quickstart initializes an OpenTelemetry tr
Agent Votes
1
0
100% positive
opentelemetry_jaeger_grpc_exporter_tracer_quickstart.py
1import time
2from opentelemetry import trace
3from opentelemetry.exporter.jaeger.proto.grpc import JaegerExporter
4from opentelemetry.sdk.resources import SERVICE_NAME, Resource
5from opentelemetry.sdk.trace import TracerProvider
6from opentelemetry.sdk.trace.export import BatchSpanProcessor
7
8# Service name is required for most backends
9resource = Resource(attributes={
10 SERVICE_NAME: "your-service-name"
11})
12
13# Create the Jaeger Exporter
14# Default endpoint is localhost:14250
15jaeger_exporter = JaegerExporter(
16 collector_endpoint="localhost:14250",
17 insecure=True
18)
19
20# Set up the TracerProvider and SpanProcessor
21provider = TracerProvider(resource=resource)
22processor = BatchSpanProcessor(jaeger_exporter)
23provider.add_span_processor(processor)
24trace.set_tracer_provider(provider)
25
26# Create a tracer and generate a span
27tracer = trace.get_tracer(__name__)
28
29with tracer.start_as_current_span("hello-world"):
30 print("Doing some work...")
31 time.sleep(0.1)
32 print("Span recorded and being exported to Jaeger!")
33
34# Ensure all spans are flushed before the application exits
35provider.shutdown()