Seleziona le tue preferenze relative ai cookie

Utilizziamo cookie essenziali e strumenti simili necessari per fornire il nostro sito e i nostri servizi. Utilizziamo i cookie prestazionali per raccogliere statistiche anonime in modo da poter capire come i clienti utilizzano il nostro sito e apportare miglioramenti. I cookie essenziali non possono essere disattivati, ma puoi fare clic su \"Personalizza\" o \"Rifiuta\" per rifiutare i cookie prestazionali.

Se sei d'accordo, AWS e le terze parti approvate utilizzeranno i cookie anche per fornire utili funzionalità del sito, ricordare le tue preferenze e visualizzare contenuti pertinenti, inclusa la pubblicità pertinente. Per continuare senza accettare questi cookie, fai clic su \"Continua\" o \"Rifiuta\". Per effettuare scelte più dettagliate o saperne di più, fai clic su \"Personalizza\".

Dati della richiesta Trace Step Functions in AWS X-Ray

Modalità Focus
Dati della richiesta Trace Step Functions in AWS X-Ray - 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à.

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

È possibile utilizzarlo AWS X-Rayper visualizzare i componenti della macchina a stati, identificare i punti deboli nelle prestazioni e risolvere le richieste che hanno provocato un errore. La macchina a stati invia i dati di traccia a X-Ray e X-Ray elabora i dati per generare una mappa dei servizi e riepiloghi delle tracce ricercabili.

Con X-Ray abilitato per la tua macchina a stati, puoi tracciare le richieste man mano che vengono eseguite in Step Functions, in tutte le AWS regioni in cui è disponibile X-Ray. Questo offre una panoramica dettagliata di un'intera richiesta Step Functions. Step Functions invierà tracce a X-Ray per l'esecuzione di macchine a stati, anche quando un ID di traccia non viene passato da un servizio upstream. È possibile utilizzare una mappa dei servizi X-Ray per visualizzare la latenza di una richiesta, inclusi tutti AWS i servizi integrati con X-Ray. È inoltre possibile configurare le regole di campionamento per indicare a X-Ray quali richieste registrare e a quali frequenze di campionamento, in base ai criteri specificati.

Quando X-Ray non è abilitato per la macchina a stati e un servizio upstream non trasmette un ID di traccia, Step Functions non invierà tracce a X-Ray per l'esecuzione di macchine a stati. Tuttavia, se un trace ID viene passato da un servizio upstream, Step Functions invierà quindi tracce a X-Ray per l'esecuzione di macchine a stati.

È possibile utilizzarlo AWS X-Ray con Step Functions nelle regioni in cui entrambi sono supportati. Per informazioni sul supporto regionale per X-Ray e Step Functions e Step Functions, consulta le pagine relative agli endpoint e alle quote di Step Functions e X-Ray.

Quote combinate X-Ray e Step Functions

È possibile aggiungere dati a una traccia per un massimo di sette giorni e interrogare i dati di traccia risalenti a trenta giorni, il periodo di tempo in cui X-Ray archivia i dati di traccia. Le tue tracce saranno soggette a quote di raggi X.. Oltre ad altre quote, X-Ray fornisce una dimensione di traccia minima garantita di 100 KB per le macchine a stati Step Functions. Se a X-Ray vengono forniti più di 100 KB di dati di traccia, ciò può comportare il congelamento della traccia. Consulta la sezione Quote di servizio della pagina X-Ray Endpoint e quote per ulteriori informazioni su altre quote per X-Ray.

Importante

Step Functions non supporta il tracciamento a raggi X per le esecuzioni di workflow secondarie avviate da uno stato di Distributed Map perché è facile superare il limite di dimensione del documento Trace per tali esecuzioni.

Installazione e configurazione

Abilita il tracciamento a raggi X durante la creazione di una macchina a stati

È possibile abilitare il tracciamento a raggi X durante la creazione di una nuova macchina a stati selezionando Abilita il tracciamento a raggi X nella pagina Specificare i dettagli.

  1. Apri la console Step Functions e scegli Crea macchina a stati.

  2. Nella pagina Scegli il metodo di creazione, scegli l'opzione appropriata per creare la tua macchina a stati. Se si sceglie Esegui un progetto di esempio, non è possibile abilitare il tracciamento a raggi X durante la creazione della macchina a stati e sarà necessario abilitare il tracciamento a raggi X dopo la creazione della macchina a stati. Per ulteriori informazioni sull'attivazione di X-Ray in una macchina a stati esistente, vedere. Abilita X-Ray in una macchina a stati esistente

    Scegli Next (Successivo).

  3. Nella pagina Specificare i dettagli, configura la tua macchina a stati.

  4. Scegliete Abilita tracciamento X-Ray.

    La macchina a stati Step Functions ora invierà tracce a X-Ray per l'esecuzione di macchine a stati.

    Nota

    Se scegli di utilizzare un ruolo IAM esistente, devi assicurarti che le scritture X-Ray siano consentite. Per ulteriori informazioni sulle autorizzazioni necessarie, consulta il seguente argomento.

Politiche IAM utilizzate AWS X-Ray in Step Functions

Per abilitare il tracciamento X-Ray, avrai bisogno di una policy IAM con autorizzazioni adeguate per consentire il tracciamento. Se la tua macchina a stati utilizza altri servizi integrati, potresti aver bisogno di politiche IAM aggiuntive. Consulta le politiche IAM per le integrazioni di servizi specifiche.

Se si abilita il tracciamento a raggi X per una macchina a stati esistente, è necessario assicurarsi di aggiungere una politica con autorizzazioni sufficienti per abilitare le tracce a raggi X.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "xray:PutTraceSegments", "xray:PutTelemetryRecords", "xray:GetSamplingRules", "xray:GetSamplingTargets" ], "Resource": [ "*" ] } ] }

Abilita X-Ray in una macchina a stati esistente

Per abilitare X-Ray in una macchina a stati esistente:

  1. Nella console Step Functions, seleziona la macchina a stati per la quale desideri abilitare il tracciamento.

  2. Scegli Modifica.

  3. Scegliete Abilita tracciamento X-Ray.

    Verrà visualizzata una notifica che indica che potrebbe essere necessario apportare ulteriori modifiche.

    Nota

    Quando abiliti X-Ray per una macchina a stati esistente, devi assicurarti di disporre di una policy IAM che conceda autorizzazioni sufficienti a X-Ray per eseguire tracce. È possibile aggiungerne uno manualmente o generarne uno. Per ulteriori informazioni, consulta la sezione sulla politica IAM perPolitiche IAM utilizzate AWS X-Ray in Step Functions.

  4. (Facoltativo) Genera automaticamente un nuovo ruolo per la tua macchina a stati per includere le autorizzazioni X-Ray.

  5. Seleziona Salva.

Configurazione del tracciamento X-Ray per Step Functions

Quando si esegue per la prima volta una macchina a stati con il tracciamento a raggi X abilitato, utilizzerà i valori di configurazione predefiniti per il tracciamento a raggi X. AWS X-Ray non raccoglie dati per ogni richiesta inviata a un'applicazione. Raccoglie invece dati per un numero statisticamente significativo di richieste. L'impostazione predefinita prevede la registrazione della prima richiesta ogni secondo e del cinque percento di eventuali richieste aggiuntive. Una richiesta al secondo è la riserva. In questo modo viene registrata almeno una traccia al secondo, purché il servizio soddisfi le richieste. Cinque percento è la percentuale di richieste aggiuntive oltre la dimensione della riserva che vengono campionate.

Per evitare di incorrere in costi del servizio durante l'acquisizione delle nozioni di base, il tasso di campionamento di default è conservativo. È possibile configurare X-Ray per modificare la regola di campionamento predefinita e configurare regole aggiuntive che applicano il campionamento in base alle proprietà del servizio o della richiesta.

Ad esempio, potresti voler disabilitare il campionamento e tracciare tutte le richieste di chiamate che modificano lo stato o la gestione delle transazioni. Account AWS Per le chiamate di sola lettura ad alto volume, come il polling in background, i controlli di integrità o la manutenzione della connessione, è possibile campionare a una frequenza bassa e ottenere comunque dati sufficienti per osservare i problemi che si verificano.

Per configurare una regola di campionamento per la tua macchina a stati:

  1. Vai alla console X-Ray.

  2. Scegli Campionamento.

  3. Per creare una regola, scegliere Create sampling rule (Crea regola di campionamento).

    Per modificare una regola, scegliere il nome di una regola.

    Per eliminare una regola, sceglierne una e utilizzare il menu Actions (Operazioni) per eliminarla.

Alcune parti delle regole di campionamento esistenti, come il nome e la priorità, non possono essere modificate. Invece, aggiungi o clona una regola esistente, apporta le modifiche desiderate, quindi usa la nuova regola.

Per informazioni dettagliate sulle regole di campionamento a raggi X e su come configurare i vari parametri, vedere Configurazione delle regole di campionamento nella console X-Ray.

Integra i servizi upstream

Per integrare l'esecuzione dei flussi di lavoro Step Functions, come i flussi di lavoro Express, Synchronous e Standard, con un servizio upstream è necessario impostare il. traceHeader Questa operazione viene eseguita automaticamente se si utilizza un'API HTTP in API Gateway. Tuttavia, se utilizzi una funzione Lambda e/o un SDK, devi impostare tu stesso le chiamate traceHeader on the StartExecutiono StartSyncExecutionAPI.

Devi specificare il traceHeader formato come. \p{ASCII}∗ Inoltre, per consentire a Step Functions di utilizzare lo stesso ID di traccia, è necessario specificare il formato diRoot={TRACE_ID};Sampled={1 or 0}. Se utilizzi una funzione Lambda, sostituisci l'TRACE_IDID di traccia nel segmento corrente e imposta il campo Sampled come 1 se la modalità di campionamento fosse vera e 0 se la modalità di campionamento fosse falsa. Fornendo l'ID di traccia in questo formato, otterrai una traccia completa.

Di seguito è riportato un esempio scritto in Python per mostrare come specificare il. traceHeader

state_machine = config.get_string_paramter("STATE_MACHINE_ARN") if (xray_recorder.current_subsegment() is not None and xray_recorder.current_subsegment().sampled) : trace_id = "Root={};Sampled=1".format( xray_recorder.current_subsegment().trace_id ) else: trace_id = "Root=not enabled;Sampled=0" LOGGER.info("trace %s", trace_id) # execute it response = states.start_sync_execution( stateMachineArn=state_machine, input=event['body'], name=context.aws_request_id, traceHeader=trace_id ) LOGGER.info(response)

Concetti

La console X-Ray

Nella AWS X-Ray console, è possibile visualizzare le mappe e le tracce dei servizi per le richieste inviate dalle applicazioni quando X-Ray è abilitato per la macchina a stati.

Visualizzazione della console X-RayPer informazioni su come accedere alla console X-Ray per le esecuzioni delle macchine a stati, vedere.

Per informazioni dettagliate sulla console X-Ray, vedere la documentazione della console X-Ray.

Segmenti, sottosegmenti e tracce

Un segmento registra le informazioni relative a una richiesta inviata alla macchina a stati. Contiene informazioni come il lavoro svolto dalla macchina a stati e può contenere anche sottosegmenti con informazioni sulle chiamate downstream.

Una traccia raccoglie tutti i segmenti generati da una singola richiesta.

Campionamento

Per garantire un tracciamento efficiente e fornire un campione rappresentativo delle richieste servite dall'applicazione, X-Ray applica un algoritmo di campionamento per determinare quali richieste vengono tracciate. Questo può essere modificato modificando le regole di campionamento.

Metriche

Per la vostra macchina a stati, X-Ray misurerà il tempo di invocazione, il tempo di transizione di stato, il tempo di esecuzione complessivo di Step Functions e le variazioni in questo tempo di esecuzione. È possibile accedere a queste informazioni tramite la console X-Ray.

Analisi

La console AWS X-Ray Analytics è uno strumento interattivo per l'interpretazione dei dati di traccia. È possibile definire il set di dati attivo con filtri sempre più granulari facendo clic sui grafici e i pannelli di parametri e campi associati con il set di tracciamenti corrente. È possibile analizzare le prestazioni della macchina a stati per individuare e identificare i problemi di prestazioni.

Per informazioni dettagliate sull'analisi a raggi X, consulta Interagire con la console Analytics AWS X-Ray

Integrazioni dei servizi Step Functions e X-Ray

Alcuni dei AWS servizi che si integrano con Step Functions forniscono l'integrazione AWS X-Ray aggiungendo un'intestazione di tracciamento alle richieste, eseguendo il demone X-Ray o prendendo decisioni di campionamento e caricando i dati di traccia su X-Ray. Altri devono essere strumentati utilizzando l'SDK. AWS X-Ray Alcuni non supportano ancora l'integrazione con i raggi X. L'integrazione X-Ray è necessaria per fornire dati di tracciamento completi quando si utilizza un'integrazione di servizi con Step Functions

Supporto X-Ray nativo

Le integrazioni di servizi con supporto X-Ray nativo includono:

Strumentazione richiesta

Integrazioni di servizi che richiedono strumentazione a raggi X:

  • Amazon Elastic Container Service

  • AWS Batch

  • AWS Fargate

Traccia solo lato client

Altre integrazioni di servizi non supportano le tracce X-Ray. Tuttavia, le tracce lato client possono ancora essere raccolte:

  • Amazon DynamoDB

  • Amazon EMR

  • Amazon SageMaker AI

  • AWS CodeBuild

  • AWS Glue

Visualizzazione della console X-Ray

X-Ray riceve i dati dai servizi sotto forma di segmenti. X-Ray raggruppa i segmenti che hanno una richiesta comune in tracce. X-Ray elabora le tracce per generare un grafico di servizio che fornisce una rappresentazione visiva dell'applicazione.

Dopo aver avviato l'esecuzione della macchina a stati, è possibile visualizzare le relative tracce a raggi X scegliendo il collegamento alla mappa di traccia a raggi X nella sezione Dettagli di esecuzione.

Dopo aver abilitato X-Ray per la tua macchina a stati, puoi visualizzare le informazioni di tracciamento per le sue esecuzioni nella console X-Ray.

Visualizzazione delle informazioni di tracciamento X-Ray per Step Functions

I passaggi seguenti illustrano il tipo di informazioni che è possibile visualizzare nella console dopo aver abilitato X-Ray ed eseguito un'esecuzione. Vengono mostrate le tracce a raggi X per il progetto Crea un esempio di pattern di callback con Amazon SQS, Amazon SNS e Lambda di esempio.

Tracce

Al termine dell'esecuzione, puoi accedere alla console X-Ray, dove vedrai la pagina X-Ray Traces. Viene visualizzata una panoramica della mappa dei servizi e informazioni di traccia e segmento per la macchina a stati.

Schermata illustrativa delle tracce a raggi X per una macchina a stati.

Mappa servizio

La mappa dei servizi nella console X-Ray consente di identificare i servizi in cui si verificano errori, in cui sono presenti connessioni con latenza elevata o a visualizzare le tracce delle richieste non riuscite.

Schermata illustrativa incentrata sulla mappa dei servizi nelle tracce a raggi X.

Sulla mappa di traccia, è possibile scegliere un nodo di servizio per visualizzare le richieste per quel nodo o un edge tra due nodi per visualizzare le richieste che hanno percorso quella connessione. Qui, il WaitForCallBack nodo è stato selezionato ed è possibile visualizzare informazioni aggiuntive sul suo stato di esecuzione e risposta.

Dettagli di esempio per un nodo di traccia a raggi X.

Puoi vedere come la mappa del servizio X-Ray è correlata alla macchina a stati. Esiste un nodo della mappa dei servizi per ogni integrazione di servizi chiamato da Step Functions, a condizione che supporti X-Ray.

Esempio di rappresentazione grafica della macchina a stati tracciata.

Segmenti e sottosegmenti

Una traccia è una raccolta di segmenti generati da una singola richiesta. Ogni segmento fornisce il nome della risorsa, dettagli sulla richiesta e dettagli sul lavoro svolto. Nella pagina Traces, puoi vedere i segmenti e, se espansi, i relativi sottosegmenti corrispondenti. Puoi scegliere un segmento o un sottosegmento per visualizzarne informazioni dettagliate.

Sarai un segmento diverso per ogni nodo sulla mappa dei servizi.

Schermata di esempio di segmenti e sottosegmenti per una macchina a stati.

La scelta di un segmento fornisce il nome della risorsa, i dettagli sulla richiesta e i dettagli sul lavoro svolto.

Un segmento può suddividere i dati sull'attività eseguita in sottosegmenti. La scelta di un sottosegmento mostra informazioni e dettagli granulari sulla tempistica. Un sottosegmento può contenere dettagli aggiuntivi su una chiamata a un AWS servizio, un'API HTTP esterna o un database SQL.

Analisi

La console AWS X-Ray Analytics è uno strumento interattivo per l'interpretazione dei dati di traccia. Puoi usarlo per comprendere più facilmente le prestazioni della tua macchina a stati. È possibile esplorare, analizzare e visualizzare le tracce tramite grafici interattivi del tempo di risposta e delle serie temporali per individuare problemi di prestazioni e latenza.

È possibile definire il set di dati attivo con filtri sempre più granulari facendo clic sui grafici e i pannelli di parametri e campi associati con il set di tracciamenti corrente.

Configurazione

È possibile configurare le opzioni di campionamento e crittografia dalla console X-Ray.

  • Scegliete Campionamento per visualizzare i dettagli sulla frequenza di campionamento e sulla configurazione.

    È possibile modificare le regole di campionamento per controllare la quantità di dati registrati e modificare il comportamento di campionamento in base alle proprie esigenze specifiche.

  • Scegliete Crittografia per modificare le impostazioni di crittografia.

    È possibile utilizzare l'impostazione predefinita, in cui X-Ray crittografa le tracce e i dati inattivi oppure, se necessario, è possibile scegliere una chiave KMS. In quest'ultimo caso si applicano AWS KMSle tariffe standard.

Cosa succede se non ci sono dati nella mappa di traccia o nella mappa dei servizi?

Se hai abilitato X-Ray, ma non riesci a visualizzare alcun dato nella console X-Ray, verifica che:

  • I ruoli IAM sono configurati correttamente per consentire la scrittura su X-Ray.

  • Le regole di campionamento consentono il campionamento dei dati.

  • Poiché può esserci un breve ritardo prima che vengano applicati i ruoli IAM appena creati o modificati, ricontrolla la traccia o le mappe dei servizi dopo alcuni minuti.

  • Se vedi Data non trovata nel pannello X-Ray Traces, controlla le impostazioni del tuo account IAM e assicurati che AWS Security Token Service sia abilitato per la regione desiderata. Per ulteriori informazioni, consulta Attivazione e disattivazione AWS STSRegione AWS in una delle guide per l'utente di IAM.

PrivacyCondizioni del sitoPreferenze cookie
© 2025, Amazon Web Services, Inc. o società affiliate. Tutti i diritti riservati.