Monitorare le prestazioni delle funzioni con Lambda Insights di Amazon CloudWatch
Amazon CloudWatch Lambda Insights raccoglie e aggrega parametri e registri delle prestazioni del runtime delle funzioni Lambda per le applicazioni serverless. In questa pagina viene descritto come abilitare e utilizzare Lambda Insights per eseguire la diagnosi dei problemi relativi alle funzioni Lambda.
Sezioni
Come Lambda Insights monitora le applicazioni serverless
CloudWatch Lambda Insights è una soluzione di monitoraggio e risoluzione dei problemi per applicazioni serverless in esecuzione su AWS Lambda. La soluzione raccoglie, aggrega e riassume le metriche a livello di sistema, tra cui il tempo della CPU, la memoria, l'utilizzo del disco e della rete. Vengono inoltre raccolte, aggregate e riepilogate informazioni diagnostiche quali avvii a freddo e arresti del worker Lambda per aiutare a isolare i problemi con le funzioni Lambda e risolverli rapidamente.
Lambda Insights utilizza una nuova estensione CloudWatch Lambda Insights che viene fornita come livello Lambda. Quando si abilita questa estensione su una funzione Lambda per un runtime supportato, essa raccoglie parametri a livello di sistema ed emette un singolo evento di log delle prestazioni per ogni chiamata di tale funzione Lambda. CloudWatch utilizza la formattazione dei parametri incorporata per estrarre i parametri dagli eventi di log. Per ulteriori informazioni, consulta l'argomento relativo all'Uso delle estensioni AWS Lambda.
Il livello Lambda Insights estende CreateLogStream e PutLogEvents per il gruppo di log /aws/lambda-insights/.
Prezzi
Quando so abilita Lambda Insights per la funzione Lambda, Lambda Insights riporta 8 parametri per funzione e ogni chiamata di funzione invia circa 1 KB di dati di log a CloudWatch. Paghi solo in base ai parametri e ai registri riportati per la tua funzione da Lambda Insights. Non sono previste tariffe minime né policy di utilizzo del servizio obbligatorie. Non si paga per Lambda Insights se la funzione non viene richiamata. Per informazioni sui prezzi, consulta la pagina Prezzi di Amazon CloudWatch
Runtime supportati
È possibile utilizzare Lambda Insights con qualsiasi runtime che supporta le estensioni Lambda.
Attivazione di Lambda Insights nella console Lambda
È possibile abilitare il monitoraggio Lambda Insights avanzato su funzioni Lambda nuove ed esistenti. Quando si abilita Lambda Insights su una funzione nella console Lambda per un runtime supportato, Lambda aggiunge l'estensione Lambda Insights come livello alla funzione e verifica o prova ad allegare la policy CloudWatchLambdaInsightsExecutionRolePolicy
Per attivare Lambda Insights nella console Lambda
Aprire la pagina Funzioni
della console Lambda. -
Scegliere la funzione.
-
Scegli la scheda Configurazione.
-
Dal menu a sinistra, scegli Strumenti di monitoraggio e operazioni.
-
Nel riquadro Strumenti di monitoraggio aggiuntivi scegli Modifica.
-
In CloudWatch Lambda Insights, attiva Monitoraggio avanzato.
-
Selezionare Salva.
Attivazione di Lambda Insights a livello di programmazione
È inoltre possibile abilitare Lambda Insights utilizzando la AWS Command Line Interface (AWS CLI), la CLI (SAM) AWS Serverless Application Model, CloudFormation o il AWS Cloud Development Kit (AWS CDK). Quando si abilita Lambda Insights a livello di programmazione su una funzione per un runtime supportato, CloudWatch collega la policy CloudWatchLambdaInsightsExecutionRolePolicy
Per ulteriori informazioni, consulta le Nozioni di base su Lambda Insights nella Guida per l'utente di Amazon CloudWatch.
Uso del pannello di controllo di Lambda Insights
Il pannello di controllo Lambda Insights ha due visualizzazioni nella console CloudWatch: la panoramica multifunzione e la vista a funzione singola. La panoramica multi-funzione aggrega i parametri di runtime per le funzioni Lambda nell'account AWS attuale e nella regione. La vista a funzione singola mostra i parametri di runtime disponibili per una singola funzione Lambda.
È possibile utilizzare la panoramica multifunzione del pannello di controllo Lambda Insights nella console CloudWatch per identificare le funzioni Lambda sovrautilizzate e sottoutilizzate. È possibile utilizzare la visualizzazione a funzione singola del pannello di controllo Lambda Insights nella console CloudWatch per risolvere i problemi delle singole richieste.
Per visualizzare i parametri di runtime per tutte le funzioni
-
Aprire la pagina Multifunzione
nella console CloudWatch. -
Scegli tra gli intervalli di tempo predefiniti oppure scegli un intervallo di tempo personalizzato.
-
(Facoltativo) Scegliere Add to dashboard (Aggiungi a pannello di controllo) per aggiungere i widget al dashboard CloudWatch.
Per visualizzare le metriche di runtime di una singola funzione
-
Aprire la pagina Funzione singola
nella console CloudWatch. -
Scegli tra gli intervalli di tempo predefiniti oppure scegli un intervallo di tempo personalizzato.
-
(Facoltativo) Scegliere Add to dashboard (Aggiungi a pannello di controllo) per aggiungere i widget al dashboard CloudWatch.
Per ulteriori informazioni, vedere Creazione e utilizzo dei widget nei pannelli di controllo CloudWatch.
Esempio di flusso di lavoro per rilevare anomalie delle funzioni
È possibile utilizzare la panoramica multifunzione sul pannello di controllo Lambda Insights per identificare e rilevare anomalie della memoria di calcolo con la funzione. Ad esempio, se la panoramica multifunzione indica che una funzione utilizza una grande quantità di memoria, è possibile visualizzare metriche dettagliate sull'utilizzo della memoria nel riquadro Uso memoria. Puoi quindi accedere al pannello di controllo Parametri per abilitare il rilevamento delle anomalie o creare un allarme.
Per abilitare il rilevamento delle anomalie per una funzione
-
Aprire la pagina Multifunzione
nella console CloudWatch. -
In Riepilogo funzione, scegliere il nome della funzione.
La vista a funzione singola si apre con le metriche di runtime della funzione.
-
Nel riquadro Uso memoria scegliere i tre punti verticali, quindi scegliere Visualizza in metriche per aprire il pannello di controllo Parametri .
-
Nella scheda Graphed metrics (Parametri grafici), nella colonna Actions (Operazioni), scegli la prima icona per abilitare il rilevamento delle anomalie per la funzione.
Per ulteriori informazioni, consulta Utilizzo del rilevamento delle anomalie di CloudWatch.
Esempio di flusso di lavoro utilizzando query per risolvere i problemi di una funzione
È possibile utilizzare la visualizzazione a funzione singola nel pannello di controllo Lambda Insights per identificare la causa principale di un picco nella durata della funzione. Ad esempio, se la panoramica multifunzione indica un notevole aumento della durata della funzione, è possibile sospendere o scegliere ciascuna funzione nel riquadro Durata per determinare quale funzione sta causando l'aumento. È quindi possibile accedere alla visualizzazione a funzione singola ed esaminare i registri applicazioni per determinare la causa principale.
Per eseguire query su una funzione
-
Aprire la pagina Multifunzione
nella console CloudWatch. -
Nel riquadro Durata scegliere la funzione per filtrare le metriche della durata.
-
Aprire la pagina Funzione singola
. -
Scegli l'elenco a discesa Filtra metriche per nome funzione, quindi scegli la funzione.
-
Per visualizzare i 1000 registri applicazioni più recenti, scegliere la scheda Registri applicazioni.
-
Esaminare il timestamp e il messaggio per identificare la richiesta di chiamata per cui si desidera risolvere i problemi.
-
Per visualizzare le 1000 invocazioni più recenti, scegliere la scheda Invocazioni .
-
Selezionare il timestamp o il messaggio per la richiesta di invocazione per cui si desidera risolvere i problemi.
-
Scegliere l'elenco a discesa Visualizza registri quindi scegliere Visualizza registri prestazioni.
Viene visualizzata una query generata automaticamente per la funzione nel pannello di controllo Logs Insights (Analisi registri) .
-
Scegliere Esegui query per generare un messaggio Log per la richiesta di chiamata.
Fasi successive
-
Informazioni su come creare un pannello di controllo di CloudWatch Logs in Creazione di un pannello di controllo nella Guida per l'utente di Amazon CloudWatch.
-
Scopri come aggiungere query a un pannello di controllo di CloudWatch Logs in Aggiunta di query a pannello di controllo o esportazione dei risultati della query nella Guida per l'utente di Amazon CloudWatch.