Python 支持的组件和版本

要确保 Instana Python 软件包与您当前的设置兼容,请查看 Instana Python 软件包支持的组件和版本。

有关监控 Python 应用程序的更多信息,请参阅监控 Python

Instana AutoTrace webhook

Instana AutoTrace webhook 可以在整个 Kubernetes 集群中自动监测 Python 进程。

Python 运行时

Instana Python 2.5.4 和早期版本仅在 Python 运行时(最高至 3.10 )上支持对 Tornado、asyncio 和 aiohttp 库进行跟踪。

表 1. 支持 Python 运行时
Python 版本 Instana Python 软件包版本
CPython >= 3.8 和 <= 3.13 >= 3.0.0
CPython >= 3.8 和 < 3.13 >= 2.5.0
CPython >= 3.7 和 < 3.10 < 2.5.0
CPython >= 2.7 和 <= 3.6 < 2.0.0

长期支持

Instana 遵循 Python 的官方长期支持 (LTS) 和生命周期终止 (EOL) 时间表

当 Python 版本到了到期日,Instana 会再提供一年的支持期。 为避免出现问题,请定期更新 Python 版本。

支持的环境

Instana Python 软件包支持多种环境。

平台

支持以下平台和 CPU 架构:

表 2. 支持的平台
平台 x86_64/amd64 ppc64le s390x aarch64/arm64
Linux
Red Hat [1]
视窗 [2]
AWS Fargate
AWS Lambda
Kubernetes
Google Cloud
集装箱 [3]

Instana Python 软件包 3.5.0 引入了 ppc64les390 支持,而 3.6.0 则增加了 Windows 支持。

跟踪

Instana Python 软件包支持跨其他 Instana 仪器平台、技术和语言的分布式跟踪。

Instana Python 软件包版本 "列提供了有关版本限制的其他信息。 Instana Python 软件包版本 "列值 Any 表示软件包版本 >= 3.0.0。

规格支持

下表列出了 Instana Python 软件包支持的规格:

表 3. 规格支持
规范 支持策略 最低版本 最高版本 Instana Python 软件包版本
ASGI 45 天 2.0.0 3.0.0 任何
WSGI 0 天 PEP 333 1.0 PEP 3333 1.0.1 任何

HTTP

下表列出了 Instana Python 软件包支持的 HTTP 框架和库:

Web 框架

下表列出了 Instana Python 软件包支持的 HTTP 网络框架:

表 4. 支持 HTTP 网络框架
框架 支持策略 最低版本 最高版本 Instana Python 软件包版本
Django 45 天 1.11.0 5.2.4 任何
FastAPI 45 天 0.51.0 0.115.14 任何
Flask 45 天 0.12.0 3.1.1 任何
Pyramid 45 天 1.6.5 2.0.2 任何
Sanic 按需 21.9.0 25.3.0 任何
星莱特 45 天 0.12.13 0.47.1 任何
龙卷风 45 天 6.0.0 6.5.1 任何

客户和图书馆

下表列出了 Instana Python 软件包支持的 HTTP 客户端和库:

表 5. 支持 HTTP 客户端和库
支持策略 最低版本 最高版本 Instana Python 软件包版本
aiohttp 45 天 3.1.0 3.12.14 Python >= 3.9
Httpx 45 天 0.20.0 0.28.1 >= 3.5.0
请求数 45 天 2.16.1 2.32.4 任何
Urllib3 45 天 1.26.5 2.5.0 任何

RPC

下表列出了 Instana Python 软件包支持的 RPC 库:

表 6. 支持的 RPC 库
支持策略 最低版本 最高版本 Instana Python 软件包版本
grpcio 45 天 1.14.1 1.73.1 任何
Spyne 45 天 2.13.1a0 2.14.0 >= 3.4.0 with Python < 3.12

数据库

下表列出了 Instana Python 软件包支持的数据库库:

表 7. 支持的数据库库
支持策略 最低版本 最高版本 Instana Python 软件包版本
AWS DynamoDB [4] 45 天 1.15.0 1.39.3 任何
AWS S3 [4:1] 45 天 1.15.0 1.39.3 任何
Cassandra -驱动程序 45 天 3.20.2 3.29.2 任何
Couchbase 按需 2.3.5 2.5.12 任何
mysqlclient 45 天 1.3.14 2.2.7 任何
PyMySQL 45 天 0.6.7 1.1.1 任何
pymongo 45 天 3.7.0 4.13.2 任何
Psycopg2 45 天 2.7.2 2.9.10 任何
Redis 45 天 2.10.6 6.2.0 任何
SQLAlchemy 45 天 1.1.5 2.0.41 任何

消息传递

下表列出了 Instana Python 软件包支持的消息传递库:

表 8. 支持的信息传递库
支持策略 最低版本 最高版本 Instana Python 软件包版本
Aioamqp 45 天 0.15.0 0.15.0 >= 3.4.0
Aio-pika 45 天 9.1.0 9.5.5 >= 3.5.0
Confluent Kafka 45 天 2.0.0 2.11.0 >= 3.4.0
Kafka -蟒蛇 45 天 2.0.0 2.2.15 >= 3.4.0 with Python < 3.12
Kafka -python-ng 45 天 2.0.0 2.2.3 >= 3.4.0 与 Python >= 3.12
pika 45 天 1.0.0 1.3.2 任何

云服务

下表列出了 Instana Python 软件包支持的云服务库:

表 9. 支持的云服务库
支持策略 最低版本 最高版本 Instana Python 软件包版本
Boto3 ( AWS SDK) 45 天 1.15.0 1.39.3 任何
Google -云ubsub [5] 45 天 2.0.0 2.30.0 任何
google-cloud-storage 45 天 1.24.0 3.1.1 任何

Python 内置模块

下表列出了 Instana Python 软件包支持的 Python 内置库:

表 10. 支持 Python 内置库
支持策略 最低版本 最高版本 Instana Python 软件包版本
Asyncio 0 天 1.4 23.7.0 任何
正在记录 0 天 4.3.0 5.5.3 任何

其他图书馆

下表列出了 Instana Python 软件包支持的其他库:

表 11. 其他支持的图书馆
支持策略 最低版本 最高版本 Instana Python 软件包版本
gevent 按需 1.4 23.7.0 任何
Celery 45 天 4.3.0 5.5.3 任何

追踪说明和限制

查看 Instana Python Tracer 的权限和限制。

主题启动许可

Instana Python 追踪器需要权限才能创建和启动 Python threading.Timer 对象。 在大多数系统中,该权限是默认授予的。 在某些嵌套的容器化场景中,例如在某些 Docker -in- Docker 容器版本中,默认情况下不授予该权限。

如果出现 RuntimeError: can't start new thread 这样的异常,则很可能是权限不足造成的。 如果您升级或更改了 Docker -in- Docker 容器,但内部应用容器没有获得所需的权限,那么作为最后的手段,您可以使用 --privileged 权限来启动应用容器。

跨线程追踪

Instana Python 软件包不支持跨线程跟踪。 例如,当一个请求首先在单个线程上处理,然后在 multiprocessing.ThreadPool 的帮助下将工作量分配给多个其他线程时,其他线程中发生的传出调用不会被捕获。 由于每个退出跨度都需要有一个进入跨度,而启动的进入跨度不在线程范围内,因此不会记录此类呼出调用。 这是由于默认 OpenTracing ThreadLocalScopeManager 的固有特性以及缺乏 ThreadPool 专用的范围管理器造成的。

中跟踪非同步函数 FastAPI

Instana Python 软件包仅支持追踪 FastAPI 中基于例程的并发性。 这是因为在线程池上执行的非同步函数无法通过线程边界进行跟踪

使用多个跟踪器跟踪

不支持同时使用 Instana 和第三方跟踪器(如 New Relic 跟踪器或 OpenTelemetry )跟踪单个 Python 应用程序。

受支持的 Web 服务器

Instana Python 软件包支持以下网络服务器:

  • uWSGI
  • Gunicorn
  • mod_wsgi
  • Nginx WSGI
  • uvicorn

传感器数据收集

Instana Python 传感器收集以下数据:

跟踪的配置

Instana Python 传感器收集以下配置数据:

  • 名称
  • 运行时
  • PID
  • 已装入模块

度量

Instana Python 传感器收集以下指标:

  • GC 活动
  • 内存使用率
  • 线程
  • 分页
  • I/O
  • 事件
  • 上下文切换

AutoProfile

Instana Python 软件包生成以下配置文件:

概要文件 Python 版本 平台
CPU 使用率 >= 2.7 和 >= 3.4 Linux 和 macOS
内存分配速率 >= 3.4 Linux 和 macOS
阻止调用 >= 2.7 和 >= 3.4 Linux 和 macOS

其他信息


  1. Instana Python 软件包支持以下 Red Hat Enterprise Linux 版本:RHEL 8.10、RHEL 9.6 和 RHEL 10.0。

  2. Instana Python 软件包支持以下 Windows 版本:Windows 11 和 Windows Server 2025。

  3. Docker、 Podman 和 Rancher 是受支持的容器引擎和容器管理工具。

  4. AWS DynamoDB 和 AWS S3 是通过 Boto3 软件包进行检测的。 ↩︎ ↩︎

  5. Instana Python 软件包仅支持 Google Pub/Sub 的拉动式消息传递