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à.
Stati funzione Lambda
Per indicare quando la funzione è pronta per la chiamata, Lambda include un campo di stato nella configurazione della funzione per tutte le funzioni. State
fornisce informazioni sullo stato corrente della funzione, incluso se sia possibile richiamare correttamente la funzione. Gli stati della funzione non modificano il comportamento delle chiamate della funzione o il modo in cui la funzione esegue il codice. Gli stati delle funzioni includono:
-
Pending
– Dopo che Lambda ha creato la funzione, imposta lo stato su sospeso. Mentre lo stato è in sospeso, Lambda tenta di creare o configurare le risorse per la funzione, ad esempio le risorse VPC o EFS. Lambda non richiama una funzione durante lo stato in sospeso. Qualsiasi chiamata o altre operazioni API che operano sulla funzione avranno esito negativo. -
Active
– La funzione passa allo stato attivo dopo che Lambda ha completato la configurazione e il provisioning delle risorse. Le funzioni possono essere richiamate correttamente solo quando sono attive. -
Failed
– Indica che la configurazione o il provisioning delle risorse ha riscontrato un errore. -
Inactive
– Una funzione diventa inattiva quando è stata inattiva abbastanza a lungo perché Lambda recuperi le risorse esterne configurate per essa. Quando si tenta di richiamare una funzione che è inattiva, la chiamata non riesce e Lambda imposta la funzione sullo stato in sospeso fino a quando le risorse della funzione non vengono ricreate. Se Lambda non riesce a ricreare le risorse, la funzione torna allo stato inattivo. Se la funzione è bloccata nello stato inattivo, consulta la funzioneStatusCode
eStatusCodeReason
gli attributi per un'ulteriore risoluzione dei problemi. Potrebbe essere necessario risolvere eventuali errori e ridistribuire la funzione per ripristinarla allo stato attivo.
Se utilizzi flussi di lavoro di automazione basati su SDK o richiami direttamente le API di servizio di Lambda, prima dell'invocazione assicurati di controllare lo stato di una funzione per verificare che sia attiva. Puoi farlo con l'azione GetFunctionAPI Lambda o configurando un cameriere utilizzando l'SDK for AWS Java
aws lambda get-function --function-name my-function --query 'Configuration.[State, LastUpdateStatus]'
Verrà visualizzato l'output seguente:
[ "Active", "Successful" ]
Le operazioni seguenti non riescono mentre la creazione della funzione è in attesa:
Stati delle funzioni durante l'aggiornamento
Lambda fornisce un contesto aggiuntivo per le funzioni in fase di aggiornamento con l'attributo LastUpdateStatus
, che può avere i seguenti stati:
-
InProgress
– È in corso un aggiornamento su una funzione esistente. Mentre è in corso un aggiornamento della funzione, le chiamate vanno al codice e alla configurazione precedenti della funzione. -
Successful
– L'aggiornamento è stato eseguito. Una volta che Lambda ha terminato l'aggiornamento, questo rimane impostato fino a un aggiornamento ulteriore. -
Failed
– L'aggiornamento della funzione non è riuscito. Lambda interrompe l'aggiornamento e il codice e la configurazione precedenti della funzione rimangono disponibili.
Quel che segue è il risultato di get-function-configuration
su una funzione in fase di aggiornamento.
{ "FunctionName": "my-function", "FunctionArn": "arn:aws:lambda:us-east-2:123456789012:function:my-function", "Runtime": "nodejs20.x", "VpcConfig": { "SubnetIds": [ "subnet-071f712345678e7c8", "subnet-07fd123456788a036", "subnet-0804f77612345cacf" ], "SecurityGroupIds": [ "sg-085912345678492fb" ], "VpcId": "vpc-08e1234569e011e83" },
"State": "Active", "LastUpdateStatus": "InProgress"
, ... }
FunctionConfiguration ha altri due attributi, LastUpdateStatusReason
e LastUpdateStatusReasonCode
, per contribuire a risolvere i problemi relativi all'aggiornamento.
Le operazioni seguenti non riescono mentre è in corso un aggiornamento asincrono: