{"library":"opentelemetry-exporter-jaeger","title":"OpenTelemetry Jaeger Exporter","description":"The `opentelemetry-exporter-jaeger` library provides exporters for sending OpenTelemetry trace data to Jaeger. It supports sending spans via UDP to a Jaeger Agent (default) or over HTTP to a Jaeger Collector using the Thrift protocol. Part of the broader OpenTelemetry Python project, it undergoes regular releases, typically aligned with `opentelemetry-sdk` and `opentelemetry-api` updates, ensuring compatibility with the latest OpenTelemetry specifications. The current version is 1.41.0.","language":"python","status":"active","last_verified":"Sat May 16","install":{"commands":["pip install opentelemetry-exporter-jaeger opentelemetry-sdk"],"cli":null},"imports":["from opentelemetry.exporter.jaeger.thrift import JaegerExporter","from opentelemetry.exporter.jaeger.thrift import JaegerHttpExporter","from opentelemetry.sdk.trace import TracerProvider","from opentelemetry.sdk.trace.export import BatchSpanProcessor","from opentelemetry.sdk.resources import Resource","from opentelemetry.sdk.resources import SERVICE_NAME"],"auth":{"required":false,"env_vars":[]},"quickstart":{"code":"import os\nfrom opentelemetry import trace\nfrom opentelemetry.sdk.resources import Resource, SERVICE_NAME\nfrom opentelemetry.sdk.trace import TracerProvider\nfrom opentelemetry.sdk.trace.export import BatchSpanProcessor\nfrom opentelemetry.exporter.jaeger.thrift import JaegerExporter\n\n# Configure resource for your service\nresource = Resource.create({\n    SERVICE_NAME: os.environ.get('OTEL_SERVICE_NAME', 'my-jaeger-service'),\n})\n\n# Configure TracerProvider\nprovider = TracerProvider(resource=resource)\n\n# Configure Jaeger Exporter (UDP to local agent by default)\n# Use environment variables for agent host/port or pass them directly:\n# JAEGER_AGENT_HOST, JAEGER_AGENT_PORT\n# For HTTP Exporter, use JaegerHttpExporter and JAEGER_COLLECTOR_ENDPOINT\njaeger_exporter = JaegerExporter(\n    agent_host_name=os.environ.get('JAEGER_AGENT_HOST', 'localhost'),\n    agent_port=int(os.environ.get('JAEGER_AGENT_PORT', 6831)),\n)\n\n# Add the exporter to a BatchSpanProcessor\nspan_processor = BatchSpanProcessor(jaeger_exporter)\nprovider.add_span_processor(span_processor)\n\n# Set the global tracer provider\ntrace.set_tracer_provider(provider)\n\n# Get a tracer and create spans\ntracer = trace.get_tracer(__name__)\n\nwith tracer.start_as_current_span('my-operation') as span:\n    span.set_attribute('event', 'started')\n    print(f\"Hello from span: {span.context.trace_id}\")\n    with tracer.start_as_current_span('inner-operation'):\n        print(\"Inside inner operation\")\n    span.set_attribute('event', 'finished')\n\n# Ensure all spans are exported before exiting\nprovider.force_flush()\nprint(\"Traces exported to Jaeger.\")","lang":"python","description":"This quickstart demonstrates how to set up the OpenTelemetry Python SDK with the Jaeger Exporter. It initializes a `TracerProvider` with a `BatchSpanProcessor` and configures the `JaegerExporter` to send traces to a local Jaeger agent via UDP. Resource attributes, particularly `SERVICE_NAME`, are crucial for identifying your service in Jaeger. Environment variables are used for agent host/port to simplify configuration.","tag":null,"tag_description":null,"last_tested":null,"results":[]},"compatibility":{"tag":null,"tag_description":null,"last_tested":"2026-05-16","installed_version":"1.21.0","pypi_latest":"1.21.0","is_stale":false,"summary":{"python_range":"3.10–3.9","success_rate":100,"avg_install_s":5.6,"avg_import_s":null,"wheel_type":"sdist"},"results":[{"runtime":"python:3.10-alpine","python_version":"3.10","os_libc":"alpine (musl)","variant":"opentelemetry-exporter-jaeger","exit_code":0,"wheel_type":"sdist","failure_reason":null,"import_side_effects":"broken","install_time_s":null,"import_time_s":null,"mem_mb":null,"disk_size":"46.9M"},{"runtime":"python:3.10-slim","python_version":"3.10","os_libc":"slim (glibc)","variant":"opentelemetry-exporter-jaeger","exit_code":0,"wheel_type":"sdist","failure_reason":null,"import_side_effects":"broken","install_time_s":6.1,"import_time_s":null,"mem_mb":null,"disk_size":"45M"},{"runtime":"python:3.11-alpine","python_version":"3.11","os_libc":"alpine (musl)","variant":"opentelemetry-exporter-jaeger","exit_code":0,"wheel_type":"sdist","failure_reason":null,"import_side_effects":"broken","install_time_s":null,"import_time_s":null,"mem_mb":null,"disk_size":"50.1M"},{"runtime":"python:3.11-slim","python_version":"3.11","os_libc":"slim (glibc)","variant":"opentelemetry-exporter-jaeger","exit_code":0,"wheel_type":"sdist","failure_reason":null,"import_side_effects":"broken","install_time_s":5.4,"import_time_s":null,"mem_mb":null,"disk_size":"48M"},{"runtime":"python:3.12-alpine","python_version":"3.12","os_libc":"alpine (musl)","variant":"opentelemetry-exporter-jaeger","exit_code":0,"wheel_type":"sdist","failure_reason":null,"import_side_effects":"broken","install_time_s":null,"import_time_s":null,"mem_mb":null,"disk_size":"41.7M"},{"runtime":"python:3.12-slim","python_version":"3.12","os_libc":"slim (glibc)","variant":"opentelemetry-exporter-jaeger","exit_code":0,"wheel_type":"sdist","failure_reason":null,"import_side_effects":"broken","install_time_s":5,"import_time_s":null,"mem_mb":null,"disk_size":"40M"},{"runtime":"python:3.13-alpine","python_version":"3.13","os_libc":"alpine (musl)","variant":"opentelemetry-exporter-jaeger","exit_code":0,"wheel_type":"sdist","failure_reason":null,"import_side_effects":"broken","install_time_s":null,"import_time_s":null,"mem_mb":null,"disk_size":"41.5M"},{"runtime":"python:3.13-slim","python_version":"3.13","os_libc":"slim (glibc)","variant":"opentelemetry-exporter-jaeger","exit_code":0,"wheel_type":"sdist","failure_reason":null,"import_side_effects":"broken","install_time_s":4.6,"import_time_s":null,"mem_mb":null,"disk_size":"39M"},{"runtime":"python:3.9-alpine","python_version":"3.9","os_libc":"alpine (musl)","variant":"opentelemetry-exporter-jaeger","exit_code":0,"wheel_type":"sdist","failure_reason":null,"import_side_effects":"broken","install_time_s":null,"import_time_s":null,"mem_mb":null,"disk_size":"46.4M"},{"runtime":"python:3.9-slim","python_version":"3.9","os_libc":"slim (glibc)","variant":"opentelemetry-exporter-jaeger","exit_code":0,"wheel_type":"sdist","failure_reason":null,"import_side_effects":"broken","install_time_s":6.9,"import_time_s":null,"mem_mb":null,"disk_size":"44M"}]}}