Perché il mio trigger Lambda Amazon SQS è stato disabilitato?

3 minuti di lettura
0

Ho configurato la mia funzione AWS Lambda per elaborare i messaggi in una coda Amazon Simple Queue Service (Amazon SQS) ma il trigger SQS non è attivo.

Breve descrizione

È possibile utilizzare una funzione Lambda per elaborare i messaggi in una coda Amazon SQS. Lo strumento di mappatura dell’origine degli eventi esegue la lettura da un'origine di evento e richiama una funzione Lambda. Lo strumento di mappatura dell’origine degli eventi è In creazione, In abilitazione, Abilitato, In disabilitazione, Disattivato, In aggiornamento o In eliminazione.

Gli strumenti Lambda per eseguire il polling effettuano costantemente la chiamata d'azione ReceiveMessage API alla coda Amazon SQS. Se la chiamata API ReceiveMessage non viene completata, la risorsa EventSourceMapping viene disabilitata.

Risoluzione

Autorizzazioni della funzione Lambda

Assicurati che il tuo ruolo di esecuzione della funzione Lambda abbia accesso alle seguenti autorizzazioni:

Autorizzazioni del Servizio di gestione delle chiavi AWS (AWS KMS)

Se la coda Amazon SQS è configurata con la crittografia SSE-KMS, assicurati che:

Nota: le code Amazon SQS con crittografia SSE-KMS non possono richiamare una funzione Lambda in un account AWS diverso (cross-account).

Cronologia eventi CloudTrail

Puoi usare AWS CloudTrail per cercare eventi. CloudTrail è attivato per impostazione predefinita per il tuo account AWS.

Per un registro continuo degli eventi nel tuo account AWS, crea un percorso. Utilizzando un percorso, CloudTrail crea i log delle chiamate API effettuate sul tuo account. I log vengono inviati a un bucket Amazon Simple Storage Service (Amazon S3) specificato da te. Se non configuri un percorso, puoi comunque visualizzare gli eventi più recenti nella console CloudTrail nella cronologia eventi.

1.    Apri la console CloudTrail.

2.    Nel riquadro di navigazione, scegli Cronologia eventi.

3.    Segui le istruzioni per visualizzare, mostrare e filtrare gli eventi CloudTrail in base al tuo caso d'uso.

Puoi anche scaricare la cronologia degli eventi registrati come file in formato CSV o JSON.

Verifica il nome dell'evento CloudTrail LambdaESMDisabled. Il log eventi contiene il parametro ESMDisableReason con ulteriori informazioni sulla causa del motivo per cui il trigger Amazon SQS non è attivo.

Per ulteriori informazioni, consulta Registrazione delle chiamate API Lambda con CloudTrail.

Allarmi Amazon CloudWatch (opzionali)

Puoi creare un allarme CloudWatch per le metriche di Amazon SQS per ricevere notifiche sul numero di messaggi ricevuti, inviati, eliminati, ecc. Ad esempio, puoi utilizzare la metrica Amazon SQS NumberOfMessagesReceived per ottenere il numero di messaggi recenti restituiti. Se il conteggio è 0, richiama una nuova funzione Lambda per verificare lo stato del trigger Amazon SQS. Se il trigger Amazon SQS è ancora disabilitato, utilizza la nuova funzione Lambda per attivarlo.

Per ulteriori informazioni, consulta Metriche CloudWatch disponibili per Amazon SQS.

Informazioni correlate

Di quali autorizzazioni ho bisogno per accedere a una coda Amazon SQS?

Come faccio a risolvere i problemi relativi alle funzioni Lambda?

AWS UFFICIALE
AWS UFFICIALEAggiornata un anno fa