Metadata-Version: 2.4
Name: opentelemetry-instrumentation-gunicorn
Version: 0.1.0b1
Summary: OpenTelemetry Instrumentation for Gunicorn WSGI Server
Project-URL: Homepage, https://github.com/Agent-Hellboy/opentelemetry-instrumentation-gunicorn
Project-URL: Repository, https://github.com/Agent-Hellboy/opentelemetry-instrumentation-gunicorn
Project-URL: Documentation, https://agent-hellboy.github.io/opentelemetry-instrumentation-gunicorn/
Author: Prince Roshan
License-Expression: Apache-2.0
License-File: LICENSE
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: Apache Software License
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Programming Language :: Python :: 3.14
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Classifier: Topic :: System :: Monitoring
Requires-Python: >=3.10
Requires-Dist: gunicorn>=21.0.0
Requires-Dist: opentelemetry-api~=1.38
Requires-Dist: opentelemetry-instrumentation==0.59b0
Requires-Dist: opentelemetry-semantic-conventions==0.59b0
Requires-Dist: opentelemetry-util-http==0.59b0
Requires-Dist: psutil>=5.9.0
Provides-Extra: dev
Requires-Dist: mdformat-footnote; extra == 'dev'
Requires-Dist: mdformat-frontmatter; extra == 'dev'
Requires-Dist: mdformat-gfm; extra == 'dev'
Requires-Dist: mdformat==0.7.22; extra == 'dev'
Requires-Dist: ruff>=0.1.0; extra == 'dev'
Provides-Extra: docs
Requires-Dist: mkdocs-material-extensions>=1.1.0; extra == 'docs'
Requires-Dist: mkdocs-material>=9.0.0; extra == 'docs'
Requires-Dist: mkdocs>=1.5.0; extra == 'docs'
Provides-Extra: instruments
Requires-Dist: gunicorn>=21.0.0; extra == 'instruments'
Provides-Extra: test
Requires-Dist: opentelemetry-sdk~=1.38; extra == 'test'
Requires-Dist: pytest-cov>=4.0.0; extra == 'test'
Requires-Dist: pytest>=7.0.0; extra == 'test'
Description-Content-Type: text/markdown

# OpenTelemetry Instrumentation for Gunicorn

[![PyPI - Version](https://img.shields.io/pypi/v/opentelemetry-instrumentation-gunicorn.svg)](https://pypi.org/project/opentelemetry-instrumentation-gunicorn/)
[![Python versions](https://img.shields.io/pypi/pyversions/opentelemetry-instrumentation-gunicorn.svg)](https://pypi.org/project/opentelemetry-instrumentation-gunicorn/)
[![Documentation](https://img.shields.io/badge/docs-mkdocs-blue.svg)](https://agent-hellboy.github.io/opentelemetry-instrumentation-gunicorn/)
[![CI](https://github.com/Agent-Hellboy/opentelemetry-instrumentation-gunicorn/actions/workflows/ci.yml/badge.svg)](https://github.com/Agent-Hellboy/opentelemetry-instrumentation-gunicorn/actions/workflows/ci.yml)

Automatic OpenTelemetry tracing and metrics for Gunicorn WSGI servers.

- **Documentation**: [https://agent-hellboy.github.io/opentelemetry-instrumentation-gunicorn/](https://agent-hellboy.github.io/opentelemetry-instrumentation-gunicorn/)
- **Quickstart**: [Quickstart Guide](https://agent-hellboy.github.io/opentelemetry-instrumentation-gunicorn/quickstart/)
- **Installation**: [Installation Guide](https://agent-hellboy.github.io/opentelemetry-instrumentation-gunicorn/installation/)
- **Configuration**: [Configuration Guide](https://agent-hellboy.github.io/opentelemetry-instrumentation-gunicorn/configuration/)

## Install

```bash
pip install opentelemetry-instrumentation-gunicorn opentelemetry-api opentelemetry-sdk
```

## Minimal Usage (Flask)

```python
from flask import Flask
from opentelemetry import trace
from opentelemetry.sdk.trace import TracerProvider
from opentelemetry.sdk.trace.export import BatchSpanProcessor, ConsoleSpanExporter
from opentelemetry.instrumentation.gunicorn import GunicornInstrumentor

trace.set_tracer_provider(TracerProvider())
trace.get_tracer_provider().add_span_processor(BatchSpanProcessor(ConsoleSpanExporter()))

app = Flask(__name__)
GunicornInstrumentor().instrument()
```

For full examples and guidance, see the docs.
