

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à.

# Utilizzo dell'oggetto del contesto Lambda per recuperare le informazioni sulla funzione Python
<a name="python-context"></a>

Quando Lambda esegue la funzione, passa un oggetto Context al [gestore](python-handler.md). Questo oggetto fornisce i metodi e le proprietà che forniscono le informazioni sulla chiamata, sulla funzione e sull'ambiente di esecuzione. Per ulteriori informazioni su come l'oggetto contesto viene passato al gestore di funzioni, consulta [Definire l'handler della funzione Lambda in Python](python-handler.md).

**Metodi del contesto**
+ `get_remaining_time_in_millis`: restituisce il numero di millisecondi rimasti prima del timeout dell'esecuzione.

**Proprietà del contesto**
+ `function_name`: il nome della funzione Lambda.
+ `function_version`: la [versione](configuration-versions.md) della funzione.
+ `invoked_function_arn`: l'Amazon Resource Name (ARN) utilizzato per richiamare la funzione. Indica se l'invoker ha specificato un numero di versione o un alias.
+ `memory_limit_in_mb`: la quantità di memoria allocata per la funzione.
+ `aws_request_id`: l'identificatore della richiesta di invocazione.
+ `log_group_name`: il gruppo di log per la funzione.
+ `log_stream_name`: il flusso di log per l'istanza della funzione.
+ `identity`: (app per dispositivi mobili) Informazioni relative all'identità Amazon Cognito che ha autorizzato la richiesta.
  + `cognito_identity_id`: l'identità autenticata di Amazon Cognito.
  + `cognito_identity_pool_id`: il pool di identità Amazon Cognito che ha autorizzato l'invocazione.
+ `client_context`: (app per dispositivi mobili) Contesto client fornito a Lambda dall'applicazione client.
  + `client.installation_id`
  + `client.app_title`
  + `client.app_version_name`
  + `client.app_version_code`
  + `client.app_package_name`
  + `custom`: un `dict` di valori personalizzati impostati dall'applicazione client per dispositivi mobili.
  + `env`: un `dict` di informazioni di ambiente fornite dall'SDK AWS.

Powertools for Lambda (Python) fornisce una definizione di interfaccia per l'oggetto del contesto Lambda. È possibile utilizzare la definizione dell'interfaccia per i suggerimenti sul tipo o per esaminare ulteriormente la struttura dell'oggetto del contesto Lambda. Per la definizione dell'interfaccia, consulta [lambda\$1context.py](https://github.com/aws-powertools/powertools-lambda-python/blob/develop/aws_lambda_powertools/utilities/typing/lambda_context.py) nel repository *powertools-lambda-python* su GitHub.

L'esempio seguente mostra una funzione di gestione che registra le informazioni di contesto.

**Example handler.py**  

```
import time

def lambda_handler(event, context):   
    print("Lambda function ARN:", context.invoked_function_arn)
    print("CloudWatch log stream name:", context.log_stream_name)
    print("CloudWatch log group name:",  context.log_group_name)
    print("Lambda Request ID:", context.aws_request_id)
    print("Lambda function memory limits in MB:", context.memory_limit_in_mb)
    # We have added a 1 second delay so you can see the time remaining in get_remaining_time_in_millis.
    time.sleep(1) 
    print("Lambda time remaining in MS:", context.get_remaining_time_in_millis())
```

Oltre alle opzioni elencate in precedenza, è possibile utilizzare l'SDK AWS X-Ray per [Strumentazione del codice Python in AWS Lambda](python-tracing.md) per identificare i percorsi del codice critici, tenere traccia delle relative prestazioni e acquisire i dati per l'analisi. 