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'endpoint dei metadati Lambda
Con l'endpoint di metadati Lambda, le tue funzioni possono scoprire in quale zona di disponibilità (AZ) sono in esecuzione. Puoi utilizzarlo per ottimizzare la latenza indirizzando verso risorse della stessa AZ come gli endpoint Amazon ElastiCache e Amazon RDS e per implementare modelli di resilienza. AZ-aware
L'endpoint restituisce i metadati in un semplice formato JSON tramite un'API HTTP localhost all'interno dell'ambiente di esecuzione ed è accessibile sia ai runtime che alle estensioni.
Sections
Nozioni di base
Powertools for AWS Lambda fornisce un'utilità per accedere all'endpoint dei metadati Lambda in Python, Java e .NET. TypeScript L'utilità memorizza nella cache la risposta dopo la prima chiamata e gestisce automaticamente l'invalidazione della cache. SnapStart
Utilizza l'utilità di metadati Powertools for AWS Lambda o chiama direttamente l'endpoint dei metadati
Comprensione degli ID delle zone di disponibilità
Gli ID AZ (ad esempiouse1-az1) si riferiscono sempre alla stessa posizione fisica in tutti AWS gli account, mentre i nomi AZ (ad esempious-east-1a) potrebbero essere associati a infrastrutture fisiche diverse in ciascun AWS
account in determinate regioni. Per ulteriori informazioni, consulta ID AZ per la coerenza tra più account.
Conversione dell'ID AZ in nome AZ:
Per convertire un ID AZ in un nome AZ, utilizza l'API Amazon EC2 DescribeAvailabilityZones. Per utilizzare questa API, aggiungi l'ec2:DescribeAvailabilityZonesautorizzazione al ruolo di esecuzione della tua funzione.
Guida di riferimento alle API
Variabili di ambiente
Lambda imposta automaticamente le seguenti variabili di ambiente in ogni ambiente di esecuzione:
-
AWS_LAMBDA_METADATA_API— L'indirizzo del server di metadati nel formato{ipv4_address}:{port}(ad esempio,).169.254.100.1:9001 -
AWS_LAMBDA_METADATA_TOKEN— Un token di autenticazione univoco per l'ambiente di esecuzione corrente. Lambda genera questo token automaticamente al momento dell'inizializzazione. Includilo in tutte le richieste API di metadati.
Endpoint
GET http://${AWS_LAMBDA_METADATA_API}/2026-01-15/metadata/execution-environment
Richiesta
Intestazioni obbligatorie:
-
Authorization— Il valore del token derivante dalla variabile diAWS_LAMBDA_METADATA_TOKENambiente con lo schema Bearer:.Bearer <token>Questa autenticazione basata su token fornisce una protezione approfondita contro le vulnerabilità di Server-Side Request Forgery (SSRF). Ogni ambiente di esecuzione riceve un token univoco generato casualmente al momento dell'inizializzazione.
Risposta
Stato: 200 OK
Content-Type: application/json
Cache-Control: private, max-age=43200, immutable
La risposta è immutabile all'interno di un ambiente di esecuzione. I client devono memorizzare la risposta nella cache e rispettare il Cache-Control TTL. Per quanto riguarda SnapStart le funzioni, il TTL viene ridotto durante l'inizializzazione in modo che i client aggiornino i metadati dopo il ripristino quando l'ambiente di esecuzione potrebbe trovarsi in una AZ diversa. Se si utilizza Powertools, la memorizzazione nella cache e l'invalidazione vengono gestiti automaticamente. SnapStart
Testo:
{ "AvailabilityZoneID": "use1-az1" }
Il AvailabilityZoneID campo contiene l'identificatore univoco della zona di disponibilità in cui è in esecuzione l'ambiente di esecuzione.
Nota
Ulteriori campi potrebbero essere aggiunti alla risposta negli aggiornamenti futuri. I client devono ignorare i campi sconosciuti e non fallire se vengono visualizzati nuovi campi.
Risposte agli errori
-
401 Non autorizzato: l'
Authorizationintestazione è mancante o contiene un token non valido. Verifica di aver superato il test.Bearer ${AWS_LAMBDA_METADATA_TOKEN} -
Metodo 405 non consentito: il metodo di richiesta non
GETlo è. -
Errore interno del server 500: errore di Server-side elaborazione.