Related pages:

Python Agent Support

Python Versions

The Python agent supports these Python versions:

  • Linux: Python 3.6, 3.7, 3.8, 3.9, and 3.10
  • Alpine Linux: Python 3.6, 3.7, 3.8, 3.9, and 3.10

Operating Systems

The Python agent operates on:

  • Linux distribution based on glibc 2.12+ and x86 64-bit architecture
  • Alpine Linux (3.13+) distribution based on musl 1.2.2+ and x86 64-bit architecture

The Python agent does not support Power Architecture.

Python Frameworks and Protocols

Python Agent supports:

  • ASGI supported frameworks such as FastAPI
  • WSGI supported frameworks such as Django, Flask, CherryPy, Bottle, and Pyramid 
  • Tornado

You can configure the agent to instrument any WSGI-based and ASGI-based application or framework as Python Web, including but not limited to those listed below.

At present, the Python agent fully supports exception detection in Django, Flask, CherryPy, Bottle, Pyramid, Tornado, and FastAPI frameworks. Other frameworks and custom applications may install exception handlers that effectively hide some exceptions from the agent. In such cases, the agent will only detect exceptions during exit calls, missed exceptions that are propagated to the WSGI or ASGI middleware, and exceptions reported via the custom business transaction API.

ASGI-Based Framework

Version

Notes

FastAPI0.72.0 - 0.82.0Only HTTP endpoints are supported

WSGI-Based Frameworks

Version

Notes

WSGI1.0

Entry point type: Python web

Default transaction naming: the first two segments of the URI

Bottle

0.12.19

CherryPy

18.6.1

Django

3.1.6

Flask

1.1.2

PasteDeploy

2.1.0

Pyramid

2.0
mod_wsgi4.7.1

Miscellaneous Frameworks

Version

Notes

Tornado3.2 - 4.5,  5.x (without asyncio), and 6.0

Entry point type: Python web

Default transaction naming: the first two segments of the URI

Database Exit Points

Supported Database Exit PointsVersion
cx_Oracle5.1.x
MongoDB3.1+
MySQL-Python
mysqlclient
MySQL Connector/Python
Psycopg 2
PyMySql
TorMySql

HTTP Exit Points

Supported HTTP Exit Points
httplib*
httplib2
requests
urllib
urllib2
urllib3
tornado.httpclient

* The agent detects calls to any external library built on top of httplib. Therefore, backend calls to such services, such as, boto, dropbox, python-twitter are detected and displayed as HTTP exit calls.

Cache Exit Points

Supported Cache Exit Points

Memcache

Redis-py