Monitoraggio di Step Functions tramite CloudWatch - AWS Step Functions

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

Monitoraggio di Step Functions tramite CloudWatch

Il monitoraggio è una parte importante per mantenere l'affidabilità, la disponibilità e le prestazioni delle AWS Step Functions tue AWS soluzioni. È necessario raccogliere il maggior numero di dati di monitoraggio dai AWS servizi utilizzati in modo da poter eseguire il debug di errori multipunto. Prima di iniziare a monitorare Step Functions, è necessario creare un piano di monitoraggio che risponda alle seguenti domande:

  • Quali sono gli obiettivi del monitoraggio?

  • Di quali risorse si intende eseguire il monitoraggio?

  • Con quale frequenza sarà eseguito il monitoraggio di queste risorse?

  • Quali strumenti di monitoraggio verranno utilizzati?

  • Chi eseguirà i processi di monitoraggio?

  • Chi deve ricevere una notifica quando si verifica un problema?

Il passaggio successivo consiste nello stabilire una baseline per le prestazioni normali di nel tuo ambiente. A questo proposito, misura le prestazioni in diversi orari e in diverse condizioni di carico. Durante il monitoraggio di Step Functions, valuta la possibilità di archiviare i dati di monitoraggio storici. Tali dati possono servire come baseline per il confronto con i dati relativi sulle prestazioni correnti, per identificare modelli di prestazioni normali e anomalie nelle prestazioni nonché elaborare metodi mediante i quali risolvere i problemi.

Ad esempio, con Step Functions, puoi monitorare quante attività o AWS Lambda attività falliscono a causa di un timeout del battito cardiaco. Quando le prestazioni non rientrano nella baseline stabilita, è possibile che sia necessario modificare l'intervallo di heartbeat.

Per stabilire una baseline, devi monitorare almeno i seguenti parametri:

  • ActivitiesStarted

  • ActivitiesTimedOut

  • ExecutionsStarted

  • ExecutionsTimedOut

  • LambdaFunctionsStarted

  • LambdaFunctionsTimedOut

Le seguenti sezioni descrivono i parametri che Step Functions fornisce ad Amazon CloudWatch. Puoi utilizzare questi parametri per monitorare le macchine a stati e le attività e per impostare allarmi sui valori di soglia. Puoi visualizzare le metriche utilizzando. AWS Management Console

Metriche che segnalano un intervallo di tempo

Alcune delle CloudWatch metriche di Step Functions sono intervalli di tempo, misurati sempre in millisecondi. Queste metriche generalmente corrispondono alle fasi dell'esecuzione per le quali è possibile impostare i timeout della macchina a stati, dell'attività e della funzione Lambda, con nomi descrittivi.

Ad esempio, il parametro ActivityRunTime misura il tempo necessario per il completamento di un'attività dopo che ne viene avviata l'esecuzione. Puoi impostare un valore di timeout per lo stesso periodo di tempo.

Nella CloudWatch console, puoi ottenere i risultati migliori se scegli la media come statistica di visualizzazione per le metriche degli intervalli di tempo.

Metriche che riportano un conteggio

Alcune CloudWatch metriche di Step Functions riportano i risultati sotto forma di conteggio. Ad esempio, ExecutionsFailed registra il numero di esecuzioni di macchina di stato che hanno esito negativo.

Step Functions emette due ExecutionsStarted metriche per ogni esecuzione di una macchina a stati. Ciò fa sì che la SampleCountstatistica della ExecutionsStarted metrica mostri il valore di 2 per ogni esecuzione di una macchina a stati. La SampleCount statistica mostra ExecutionStarted=1 e ExecutionStarted=0 quando l'esecuzione è completata.

Suggerimento

Ti consigliamo di selezionare Sum come statistica di visualizzazione per le metriche che riportano un conteggio nella console. CloudWatch

Parametri di esecuzione

Il AWS/States namespace include le seguenti metriche per tutte le esecuzioni di Step Functions. Si tratta di metriche adimensionali che si applicano a tutto il tuo account in una regione.

Parametro Descrizione
OpenExecutionCount

Numero approssimativo di esecuzioni attualmente aperte, ossia flussi di lavoro attualmente in corso nel tuo account.

L'intento è quello di fornire informazioni dettagliate su quando i flussi di lavoro si avvicinano al limite massimo di esecuzione, per evitare ExecutionLimitExceedederrori durante le chiamate o per i flussi di lavoro standard. StartExecution RedriveExecution

La metrica dipende dalle transizioni di stato del flusso di lavoro attive, pertanto, a livelli bassi, la stima potrebbe non essere in linea con il numero di flussi di lavoro in esecuzione osservato.

OpenExecutionLimit

Numero massimo di esecuzioni aperte. Per ulteriori informazioni, consulta Quote relative agli account.

Questo limite non si applica ai flussi di lavoro Express.

Metriche di esecuzione per la macchina a stati con versione o alias

Quando si esegue l'esecuzione di una macchina a stati con una versione o un alias, Step Functions emette le seguenti metriche. La ExecutionThrottled metrica verrà emessa solo in caso di esecuzione limitata. Queste metriche includeranno un metodo StateMachineArn per identificare una macchina a stati specifica.

Parametro Descrizione
ExecutionTime Intervallo, in millisecondi, tra l'inizio dell'esecuzione e il momento in cui si chiude.
ExecutionThrottled Numero di StateEntered eventi e tentativi che sono stati limitati. Questo si riferisce al throttling di StateTransition. Per ulteriori informazioni, consulta Quote relative alla limitazione statale.
ExecutionsAborted Numero di esecuzioni interrotte o terminate.
ExecutionsFailed Numero di esecuzioni non riuscite.
ExecutionsStarted Numero di esecuzioni iniziate.
ExecutionsSucceeded Numero di esecuzioni completate con successo.
ExecutionsTimedOut Numero di esecuzioni scadute per qualsiasi motivo.

Metriche di esecuzione per Express Workflows

Il AWS/States namespace include le seguenti metriche per le esecuzioni di Step Functions Express Workflows.

Parametro Descrizione
ExpressExecutionMemory

La memoria totale consumata da un Express Workflow.

ExpressExecutionBilledDuration

La durata per la quale viene addebitato un Express Workflow.

ExpressExecutionBilledMemory

La quantità di memoria consumata per la quale viene addebitato un Express Workflow.

Redrivemetriche di esecuzione per i flussi di lavoro standard

Quando si esegue redriveuna macchina a stati, Step Functions emette le seguenti metriche.

Per tutte le redriven esecuzioni, viene emessa la Executions* metrica. Ad esempio, supponiamo che un'esecuzione si interromparedriven. Questa esecuzione emetterà punti dati diversi da zero per entrambi e. RedrivenExecutionsAborted ExecutionsAborted

Parametro Descrizione
ExecutionsRedriven redrivenNumero di esecuzioni.
RedrivenExecutionsAborted Numero di redriven esecuzioni annullate o terminate.
RedrivenExecutionsTimedOut Numero di redriven esecuzioni scadute per qualsiasi motivo.
RedrivenExecutionsSucceeded Numero di redriven esecuzioni completate con successo.
RedrivenExecutionsFailed Numero di redriven esecuzioni non riuscite.

Metriche di esecuzione di Dimension for Step Functions

Dimensione Descrizione
StateMachineArn

L'Amazon Resource Name (ARN) della macchina a stati per l'esecuzione in questione.

Dimensioni per le esecuzioni con versione

Dimensione Descrizione
StateMachineArn

L'Amazon Resource Name (ARN) della macchina a stati la cui esecuzione è stata avviata da una versione.

Version

Versione della macchina a stati utilizzata per avviare l'esecuzione.

Dimensioni per le esecuzioni con un alias

Dimensione Descrizione
StateMachineArn

L'Amazon Resource Name (ARN) della macchina a stati la cui esecuzione è stata avviata da un alias.

Alias

Alias della macchina a stati utilizzato per avviare l'esecuzione.

Metriche del conteggio delle risorse per versioni e alias

Il AWS/States namespace include le seguenti metriche per il conteggio delle versioni e degli alias di una macchina a stati.

Parametro Descrizione
AliasCount

Numero di alias creati per la macchina a stati.

È possibile creare fino a 100 alias per ogni macchina a stati.

VersionCount

Numero di versioni pubblicate per la macchina a stati.

È possibile pubblicare fino a 1000 versioni di una macchina a stati.

Dimensione per le metriche del conteggio delle risorse per versioni e alias

Dimensione Descrizione
ResourceArn

L'Amazon Resource Name (ARN) della macchina a stati con una versione o un alias.

Parametri delle attività

Il AWS/States namespace include le seguenti metriche per le attività di Step Functions.

Parametro Descrizione
ActivityRunTime Intervallo, in millisecondi, tra l'inizio dell'attività e il momento in cui si chiude.
ActivityScheduleTime Intervallo, in millisecondi, per il quale l'attività rimane nello stato di pianificazione.
ActivityTime Intervallo, in millisecondi, tra il momento in cui l'attività è pianificata e l'ora di chiusura.
ActivitiesFailed Numero di attività non riuscite.
ActivitiesHeartbeatTimedOut Numero di attività che scadono a causa di un timeout del battito cardiaco.
ActivitiesScheduled Numero di attività programmate.
ActivitiesStarted Numero di attività avviate.
ActivitiesSucceeded Numero di attività completate con successo.
ActivitiesTimedOut Numero di attività che scadono alla chiusura.

Metriche delle attività di Dimension for Step Functions

Dimensione Descrizione

ActivityArn

L'ARN dell'attività.

Parametri della funzione Lambda

Il AWS/States namespace include le seguenti metriche per le funzioni Step Functions Lambda.

Parametro Descrizione
LambdaFunctionRunTime Intervallo, in millisecondi, tra l'inizio e la chiusura della funzione Lambda.
LambdaFunctionScheduleTime Intervallo, in millisecondi, per il quale la funzione Lambda rimane nello stato di pianificazione.
LambdaFunctionTime Intervallo, in millisecondi, tra il momento in cui la funzione Lambda è pianificata e l'ora di chiusura.
LambdaFunctionsFailed Numero di funzioni Lambda non riuscite.
LambdaFunctionsScheduled Numero di funzioni Lambda pianificate.
LambdaFunctionsStarted Numero di funzioni Lambda avviate.
LambdaFunctionsSucceeded Numero di funzioni Lambda completate con successo.
LambdaFunctionsTimedOut Numero di funzioni Lambda che scadono alla chiusura.

Metriche della funzione Lambda di Dimension for Step Functions

Dimensione Descrizione

LambdaFunctionArn

ARN della funzione Lambda.

Nota

Le metriche delle funzioni Lambda vengono emesse per gli stati delle attività che specificano l'ARN della funzione Lambda nel campo. Resource Stati di attività che utilizzano invece "Resource": "arn:aws:states:::lambda:invoke" emit Service Integration Metrics. Per ulteriori informazioni, consulta Richiama Lambda con Step Functions.

Parametri di integrazione del servizio

Il AWS/States namespace include le seguenti metriche per le integrazioni dei servizi Step Functions. Per ulteriori informazioni, consulta Utilizzo AWS Step Functions con altri servizi.

Parametro Descrizione
ServiceIntegrationRunTime Intervallo, in millisecondi, tra l'inizio del Service Task e il momento in cui viene chiuso.
ServiceIntegrationScheduleTime Intervallo, in millisecondi, durante il quale il Service Task rimane nello stato di pianificazione.
ServiceIntegrationTime Intervallo, in millisecondi, tra il momento in cui il Service Task è pianificato e l'ora di chiusura.
ServiceIntegrationsFailed Numero di attività di servizio non riuscite.
ServiceIntegrationsScheduled Numero di attività di assistenza pianificate.
ServiceIntegrationsStarted Numero di attività di servizio avviate.
ServiceIntegrationsSucceeded Numero di attività di assistenza completate con successo.
ServiceIntegrationsTimedOut Numero di attività di servizio scadute alla chiusura.

Metriche di integrazione dei servizi Dimension for Step Functions

Dimensione Descrizione

ServiceIntegrationResourceArn

L’ARN della risorsa del servizio integrato.

Parametri servizio

Il AWS/States namespace include le seguenti metriche per il servizio Step Functions.

Parametro Descrizione
ThrottledEvents

Numero di richieste che sono state limitate.

ProvisionedBucketSize

Numero di richieste disponibili al secondo.

ProvisionedRefillRate

Numero di richieste al secondo consentite nel bucket.

ConsumedCapacity

Numero di richieste al secondo.

Metriche del servizio Dimension for Step Functions

Dimensione Descrizione

ServiceMetric

Filtra i dati per visualizzare i parametri delle transizioni dello stato.

Parametri API

Il AWS/States namespace include le seguenti metriche per l'API Step Functions.

Parametro Descrizione
ThrottledEvents

Numero di richieste che sono state limitate.

ProvisionedBucketSize

Numero di richieste disponibili al secondo.

ProvisionedRefillRate

Numero di richieste al secondo consentite nel bucket.

ConsumedCapacity

Numero di richieste al secondo.

Metriche dell'API Dimension for Step Functions

Dimensione Descrizione

APIName

Filtra i dati in base a un'API con il nome API specificato.

Fornitura delle metriche Best-Effort CloudWatch

I parametri di CloudWatch vengono distribuiti sulla base del miglior tentativo.

La completezza e la tempestività dei parametri non è garantita. È possibile che il data point per una richiesta specifica venga restituito con un timestamp successivo a quello del momento effettivo di elaborazione della richiesta. Il data point potrebbe subire un ritardo di un minuto prima di essere disponibile oppure potrebbe non essere consegnato affatto. CloudWatch CloudWatchle metriche di richiesta ti danno un'idea delle esecuzioni delle macchine a stati in tempo quasi reale. Non è pensato per essere una contabilità completa di tutte le metriche relative all'esecuzione.

Poiché questa funzionalità richiede il massimo impegno, i report disponibili nella dashboard di Billing & Cost Management potrebbero includere una o più richieste di accesso che non compaiono nelle metriche di esecuzione.