skillfed

opentelemetry-instrumentation-tornado

Tornado instrumentation for OpenTelemetry

opentelemetry-instrumentation-tornado v0.65b0 4.2M downloads/30d#2,359 on PyPI1,086
Permissive license Apache-2.0 Active released

What it is and what it does

This package integrates OpenTelemetry tracing into Tornado web applications by building on OpenTelemetry's WSGI instrumentation layer. It automatically captures HTTP request and response details—headers, status codes, paths, and timing—and exports them to OpenTelemetry backends for distributed tracing and observability. The package depends on opentelemetry-api, opentelemetry-instrumentation, opentelemetry-semantic-conventions, and opentelemetry-util-http to provide the core tracing infrastructure and standardized span attributes.

You install it alongside your Tornado application, and it hooks into the request lifecycle to emit trace spans without requiring code changes to your handlers. It's designed for developers building microservices or multi-service systems where you need end-to-end visibility into how requests flow through Tornado services and across service boundaries.

Use it for:

  • Trace HTTP requests across a Tornado microservice to diagnose latency and failure patterns
  • Export request spans to a backend like Jaeger or Zipkin for distributed tracing visualization
  • Monitor Tornado application health by correlating traces with metrics and logs
  • Debug request routing and middleware behavior in complex Tornado applications
  • Collect standardized HTTP telemetry for compliance or performance auditing

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

Adds OpenTelemetry tracing instrumentation to Tornado web applications, automatically capturing HTTP request and response metadata for observability.

Yes, if you are running Tornado in a microservice or multi-service environment where distributed tracing is valuable. The package is actively maintained, has no known vulnerabilities, and carries low install friction. The beta status and reliance on WSGI middleware (which may not fully align with Tornado's async model) warrant testing in your specific use case before production deployment.

Install

opentelemetry-instrumentation-tornado on PyPI

pip

pip install opentelemetry-instrumentation-tornado

uv

uv add opentelemetry-instrumentation-tornado

poetry

poetry add opentelemetry-instrumentation-tornado

Installing opentelemetry-instrumentation-tornado

Before you install

Low friction installation with a small, focused dependency tree. The package is actively maintained with a recent release and no known vulnerabilities, though it carries a beta status designation.

License in practice

Licensed under Apache-2.0 (permissive), allowing use in proprietary and open-source projects with minimal restrictions beyond attribution.

Quickstart

pip install opentelemetry-instrumentation-tornado

from opentelemetry.instrumentation.tornado import TornadoInstrumentor
TornadoInstrumentor().instrument()

Requires Python 3.10 or later; Tornado application must be initialized before instrumentation is applied.

Verify before relying

  • Whether the WSGI middleware foundation fully covers Tornado's async request handling model
  • Performance overhead when tracing high-volume request streams
  • Compatibility with Tornado versions not explicitly listed in classifiers

Package facts

License Apache-2.0 (permissive)
Python support supports the current Python release (>=3.10)
Install friction low — pure-Python wheel
Runtime dependencies 4 — opentelemetry-api, opentelemetry-instrumentation, opentelemetry-semantic-conventions, opentelemetry-util-http
Maintenance actively maintained — 29 days since the last release
Last repo commit
First released
Downloads 4,224,670/month — #2,359 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: opentelemetry_instrumentation_tornado-0.65b0-py3-none-any.whl

Development Status :: 4 - BetaIntended Audience :: DevelopersLicense :: OSI Approved :: Apache Software LicenseProgramming Language :: PythonProgramming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.14

Tags

tornado tracing instrumentationopentelemetry tornadotornado request tracingtornado observabilitytornado http monitoringopentelemetry wsgi tornadotornado distributed tracing
observabilitytracingtornado

More Monitoring packages

tqdm

Wraps any iterable to display a real-time…

copyleft · top 100 on PyPI

opentelemetry-semantic-conventions

Provides generated Python code for…

permissive · top 100 on PyPI

opentelemetry-sdk

Provides the reference implementation of the…

permissive · top 100 on PyPI

opentelemetry-api

Provides the abstract API and interfaces for…

permissive · top 100 on PyPI

opentelemetry-exporter-otlp-proto-http

Exports OpenTelemetry observability data to an…

permissive · top 1,000 on PyPI

opentelemetry-instrumentation

Provides automatic instrumentation commands and…

permissive · top 1,000 on PyPI

opentelemetry-instrumentation-flask

Adds distributed tracing to Flask web…

permissive · top 1,000 on PyPI

opentelemetry-instrumentation-pyramid

Adds automatic tracing and metrics collection…

permissive · top 5,000 on PyPI

opentelemetry-instrumentation-falcon

Adds distributed tracing to Falcon web…

permissive · top 5,000 on PyPI

opentelemetry-instrumentation-wsgi

Provides WSGI middleware for OpenTelemetry that…

permissive · top 1,000 on PyPI

opentelemetry-instrumentation-kafka-python

Adds distributed tracing instrumentation to…

permissive · top 5,000 on PyPI

opentelemetry-instrumentation-jinja2

Adds OpenTelemetry tracing instrumentation to…

permissive · top 5,000 on PyPI

opentelemetry-util-http

Provides ASGI and WSGI middleware and HTTP…

permissive · top 1,000 on PyPI

opentelemetry-instrumentation-aiokafka

Adds distributed tracing instrumentation to…

permissive · top 5,000 on PyPI

opentelemetry-instrumentation-aiohttp-server

Adds distributed tracing to aiohttp server…

permissive · top 5,000 on PyPI

opentelemetry-instrumentation-pymemcache

Adds OpenTelemetry tracing instrumentation to…

permissive · top 5,000 on PyPI