

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

# Applicare le patch alle librerie per analizzare le chiamate a valle
<a name="xray-sdk-python-patching"></a>

**Nota**  
Avviso di SDK/Daemon manutenzione a raggi X: il 25 febbraio 2026, X-Ray SDKs/Daemon entrerà in modalità di manutenzione, in cui AWS limiterà le versioni di AWS X-Ray SDK e Daemon per risolvere solo problemi di sicurezza. Per ulteriori informazioni sulla tempistica del supporto, consulta. [Cronologia di X-Ray SDK e Daemon Support](xray-sdk-daemon-timeline.md) Ti consigliamo di migrare a. OpenTelemetry Per ulteriori informazioni sulla migrazione a OpenTelemetry, vedere [Migrazione dalla strumentazione a raggi X](https://docs.aws.amazon.com/xray/latest/devguide/xray-sdk-migration.html) alla strumentazione. OpenTelemetry 

Per strumentare le chiamate downstream, usa l'X-Ray SDK for Python per applicare patch alle librerie utilizzate dall'applicazione. L'X-Ray SDK per Python può applicare patch alle seguenti librerie.

**Librerie supportate**
+ `[botocore](https://pypi.python.org/pypi/botocore)`, `[boto3](https://pypi.python.org/pypi/boto3)` — Client per strumenti. AWS SDK per Python (Boto) 
+ `[pynamodb](https://pypi.python.org/pypi/pynamodb/)`— La versione del client Amazon DynamoDB di Instrument PynamoDB.
+ `[aiobotocore](https://pypi.python.org/pypi/aiobotocore)`, `[aioboto3](https://pypi.python.org/pypi/aioboto3)` — Versioni integrate di Instrument [Asyncio](https://docs.python.org/3/library/asyncio.html) di SDK per client Python.
+ `[requests](https://pypi.python.org/pypi/requests)`, `[aiohttp](https://pypi.python.org/pypi/aiohttp)` — Client HTTP di alto livello dello strumento.
+ `[httplib](https://docs.python.org/2/library/httplib.html)`, [https://docs.python.org/3/library/http.client.html](https://docs.python.org/3/library/http.client.html)— I client HTTP di basso livello dello strumento e le librerie di livello superiore che li utilizzano.
+ `[sqlite3](https://docs.python.org/3/library/sqlite3.html)`— SQLite Client di strumenti.
+ `[mysql-connector-python](https://pypi.python.org/pypi/mysql-connector-python)`— Client MySQL di Instrument.
+ `[pg8000](https://pypi.org/project/pg8000/)`— Interfaccia PostgreSQL dello strumento Pure-Python.
+ `[psycopg2](https://pypi.org/project/psycopg2/)`— Adattatore per database PostgreSQL Instrument.
+ `[pymongo](https://pypi.org/project/pymongo/)`— Client Instrument MongoDB.
+ `[pymysql](https://pypi.org/project/PyMySQL/)`— Client basati su Instrument PyMy SQL per MySQL e MariaDB.

Quando si utilizza una libreria con patch, X-Ray SDK for Python crea un sottosegmento per la chiamata e registra le informazioni dalla richiesta e dalla risposta. Un segmento devono essere disponibili affinché l'SDK possa creare il sottosegmento, sia dal middleware dell'SDK che da AWS Lambda.

**Nota**  
Se utilizzi SQLAlchemy ORM, puoi strumentare le tue query SQL importando la versione SDK delle classi di sessione e di query. SQLAlchemy Per istruzioni, consulta [ SQLAlchemyUse](https://github.com/aws/aws-xray-sdk-python/blob/master/README.md#use-sqlalchemy-orm) ORM.

Per installare le patch disponibili per tutte le librerie, utilizza la funzione `patch_all` in `aws_xray_sdk.core`. Alcune librerie, ad esempio `httplib` e `urllib`, potrebbero dover abilitare l'applicazione di patch doppie chiamando `patch_all(double_patch=True)`.

**Example main.py: applica una patch a tutte le librerie supportate**  

```
import boto3
import botocore
import requests
import sqlite3

from aws_xray_sdk.core import xray_recorder
from aws_xray_sdk.core import patch_all

patch_all()
```

Per applicare patch a una singola libreria, chiamare `patch` con una tupla del nome della libreria. Per raggiungere questo risultato, è necessario fornire un singolo elenco di elementi.

**Example main.py: applica patch a librerie specifiche**  

```
import boto3
import botocore
import requests
import mysql-connector-python

from aws_xray_sdk.core import xray_recorder
from aws_xray_sdk.core import patch

libraries = (['botocore'])
patch(libraries)
```

**Nota**  
In alcuni casi, la chiave utilizzata per installare le patch di una libreria non corrisponde al nome della libreria. Alcune chiavi servono come alias per una o più librerie.  
`httplib`: `[httplib](https://docs.python.org/2/library/httplib.html)` e [https://docs.python.org/3/library/http.client.html](https://docs.python.org/3/library/http.client.html)
`mysql` – `[mysql-connector-python](https://pypi.python.org/pypi/mysql-connector-python)`

## Tracciamento del contesto per le attività asincrone
<a name="xray-sdk-python-patching-async"></a>

Per le librerie `asyncio` integrate o per [creare sottosegmenti per funzioni asincrone](xray-sdk-python-subsegments.md), devi anche configurare X-Ray SDK per Python con un contesto asincrono. Importate la `AsyncContext` classe e passatene un'istanza al registratore X-Ray.

**Nota**  
Le librerie di supporto del framework Web, come AIOHTTP, non vengono gestite tramite il modulo `aws_xray_sdk.core.patcher`. Non sono presenti nel catalogo `patcher` delle librerie supportate.

**Example main.py — Patch aioboto3**  

```
import asyncio
import aioboto3
import requests

from aws_xray_sdk.core.async_context import AsyncContext
from aws_xray_sdk.core import xray_recorder
xray_recorder.configure(service='my_service', context=AsyncContext())
from aws_xray_sdk.core import patch

libraries = (['aioboto3'])
patch(libraries)
```