Monitora le prestazioni delle funzioni con Amazon CloudWatch Lambda Insights - AWS Lambda

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

Monitora le prestazioni delle funzioni con Amazon CloudWatch Lambda Insights

Amazon CloudWatch Lambda Insights raccoglie e aggrega i parametri e i log delle prestazioni di runtime della funzione Lambda per le tue applicazioni serverless. In questa pagina viene descritto come abilitare e utilizzare Lambda Insights per eseguire la diagnosi dei problemi relativi alle funzioni Lambda.

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 riepiloga le metriche a livello di sistema, tra cui CPU tempo, memoria, disco e utilizzo 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, fornita come layer Lambda. Quando abiliti questa estensione su una funzione Lambda per un runtime supportato, raccoglie metriche a livello di sistema ed emette un singolo evento di registro delle prestazioni per ogni chiamata di quella funzione Lambda. CloudWatch utilizza la formattazione metrica incorporata per estrarre le metriche dagli eventi di registro. Per ulteriori informazioni, consulta Utilizzo delle estensioni. AWS Lambda

Il livello Lambda Insights estende CreateLogStream e PutLogEvents per il gruppo di log /aws/lambda-insights/.

Prezzi

Quando abiliti Lambda Insights per la tua funzione Lambda, Lambda Insights riporta 8 metriche per funzione e ogni chiamata di funzione invia circa 1 KB di dati di registro 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 un esempio di prezzo, consulta CloudWatch i prezzi di Amazon.

Runtime supportati

È possibile utilizzare Lambda Insights con qualsiasi tempo di esecuzione 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 tempo di esecuzione supportato, Lambda aggiunge l'estensione Lambda Insights come livello alla funzione e verifica o prova ad allegare la policy CloudWatchLambdaInsightsExecutionRolePolicy al ruolo di esecuzione della funzione.

Per attivare Lambda Insights nella console Lambda
  1. Aprire la pagina Funzioni della console Lambda.

  2. Scegliere la funzione.

  3. Scegli la scheda Configurazione.

  4. Nel menu a sinistra, scegli Strumenti operativi e di monitoraggio.

  5. Nel riquadro Strumenti di monitoraggio aggiuntivi, scegli Modifica.

  6. In CloudWatch Lambda Insights, attiva il monitoraggio avanzato.

  7. Seleziona Salva.

Attivazione di Lambda Insights a livello di programmazione

Puoi anche abilitare Lambda Insights utilizzando AWS Command Line Interface (AWS CLI), AWS Serverless Application Model (SAM) CLI o. AWS CloudFormation AWS Cloud Development Kit (AWS CDK)Quando abiliti Lambda Insights a livello di codice su una funzione per un runtime supportato, associa la CloudWatchLambdaInsightsExecutionRolePolicypolicy al CloudWatch ruolo di esecuzione della funzione.

Per ulteriori informazioni, consulta la sezione Guida introduttiva a Lambda Insights nella Amazon CloudWatch User Guide.

Uso del pannello di controllo di Lambda Insights

La dashboard Lambda Insights ha due visualizzazioni nella CloudWatch console: la panoramica multifunzione e la visualizzazione a funzione singola. La panoramica multifunzione aggrega le metriche di runtime per le funzioni Lambda nell'account corrente e nella regione. AWS La vista a funzione singola mostra i parametri di tempo di esecuzione disponibili per una singola funzione Lambda.

Puoi utilizzare la panoramica multifunzione della dashboard di Lambda Insights nella CloudWatch console per identificare le funzioni Lambda sovrautilizzate e sottoutilizzate. Puoi utilizzare la visualizzazione a funzione singola del dashboard di Lambda Insights nella CloudWatch console per risolvere i problemi delle singole richieste.

Per visualizzare i parametri di tempo di esecuzione per tutte le funzioni
  1. Apri la pagina Multifunzione nella console. CloudWatch

  2. Scegli tra gli intervalli di tempo predefiniti oppure scegli un intervallo di tempo personalizzato.

  3. (Facoltativo) Scegli Aggiungi alla dashboard per aggiungere i widget alla dashboard CloudWatch .

    La panoramica multifunzione sul pannello di controllo Lambda Insights.
Per visualizzare le metriche di tempo di esecuzione di una singola funzione
  1. Apri la pagina a funzione singola nella CloudWatch console.

  2. Scegli tra gli intervalli di tempo predefiniti oppure scegli un intervallo di tempo personalizzato.

  3. (Facoltativo) Scegli Aggiungi alla dashboard per aggiungere i widget alla dashboard CloudWatch .

    La vista a funzione singola sul pannello di controllo Lambda Insights.

Per ulteriori informazioni, consulta Creazione e utilizzo dei widget nelle dashboard. 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
  1. Apri la pagina Multifunzione nella console. CloudWatch

  2. In Riepilogo funzione, scegliere il nome della funzione.

    La vista a funzione singola si apre con le metriche di tempo di esecuzione della funzione.

    Il riquadro di riepilogo delle funzioni nel pannello di controllo Lambda Insights.
  3. Nel riquadro Uso memoria scegliere i tre punti verticali, quindi scegliere Visualizza in metriche per aprire il pannello di controllo Parametri .

    Il menu del riquadro Memory Usage (Utilizzo memoria).
  4. Nella scheda Graphed metrics (Parametri grafici), nella colonna Actions (Operazioni), scegli la prima icona per abilitare il rilevamento delle anomalie per la funzione.

    Scheda Graphed metrics (Parametri nel grafico) del riquadro Memory Usage (Uso memoria).

Per ulteriori informazioni, vedere Utilizzo del rilevamento CloudWatch delle anomalie.

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
  1. Apri la pagina Multifunzione nella CloudWatch console.

  2. Nel riquadro Durata scegliere la funzione per filtrare le metriche della durata.

    Funzione scelta nel riquadro Durata.
  3. Aprire la pagina Funzione singola.

  4. Scegli l'elenco a discesa Filtra metriche per nome funzione, quindi scegli la funzione.

  5. Per visualizzare i 1000 registri applicazioni più recenti, scegliere la scheda Registri applicazioni.

  6. Esaminare il timestamp e il messaggio per identificare la richiesta di chiamata per cui si desidera risolvere i problemi.

    I 1000 registri applicazioni più recenti.
  7. Per visualizzare le 1000 invocazioni più recenti, scegliere la scheda Invocazioni .

  8. Selezionare il timestamp o il messaggio per la richiesta di invocazione per cui si desidera risolvere i problemi.

    Selezione di una richiesta di chiamata recente.
  9. 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) .

  10. Scegliere Esegui query per generare un messaggio Log per la richiesta di chiamata.

    Esecuzione di query sulla funzione selezionata nel pannello di controllo Logs Insights (Analisi registri).

Fasi successive