Configurazione delle regole di campionamento di - AWS X-Ray

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

Configurazione delle regole di campionamento di

Puoi utilizzare la AWS X-Ray console per configurare le regole di campionamento per i tuoi servizi. X-Ray SDK e Servizi AWS che supportano il tracciamento attivo con configurazione di campionamento utilizzano regole di campionamento per determinare quali richieste registrare.

Configurazione delle regole di campionamento di

Puoi configurare il campionamento per i seguenti casi d'uso:

  • API Gateway Entrypoint: API Gateway supporta il campionamento e il tracciamento attivo. Per abilitare il tracciamento attivo su una fase API, consultare Supporto di tracciamento attivo di Amazon API Gateway per AWS X-Ray.

  • AWS AppSync— AWS AppSync supporta il campionamento e il tracciamento attivo. Per abilitare il tracciamento attivo sulle AWS AppSync richieste, vedere Tracciamento con AWS X-Ray.

  • Instrument X-Ray SDK su piattaforme di elaborazione: quando si utilizzano piattaforme di elaborazione come Amazon EC2, Amazon ECS AWS Elastic Beanstalk o, il campionamento è supportato se l'applicazione è stata strumentata con l'SDK X-Ray più recente.

Personalizzazione delle regole di campionamento

Personalizzando le regole di campionamento, puoi controllare la quantità di dati che registri. È inoltre possibile modificare il comportamento di campionamento senza modificare o ridistribuire il codice. Le regole di campionamento indicano all'X-Ray SDK quante richieste registrare per una serie di criteri. Per impostazione predefinita, l'SDK X-Ray registra la prima richiesta ogni secondo e il 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.

Puoi configurare l'SDK X-Ray per leggere le regole di campionamento da un documento JSON incluso nel codice. Tuttavia, quando esegui più istanze del servizio, ogni istanza esegue il campionamento in modo indipendente. Ciò fa sì che la percentuale globale di richieste campionate aumenti perché tutte le riserve delle istanze sono cumulate insieme in modo efficace. Inoltre, per aggiornare le regole di campionamento locali, è necessario ridistribuire il codice.

Definendo le regole di campionamento nella console X-Ray e configurando l'SDK per leggere le regole dal servizio X-Ray, puoi evitare entrambi questi problemi. Il servizio gestisce la riserva per ciascuna regola e assegna delle quote ad ogni istanza del servizio per distribuire la riserva in modo uniforme, in base al numero di istanze in esecuzione. Il limite del serbatoio viene calcolato in base alle regole impostate. Poiché le regole sono configurate nel servizio, è possibile gestirle senza effettuare implementazioni aggiuntive.

Nota

X-Ray utilizza un approccio ottimale nell'applicazione delle regole di campionamento e, in alcuni casi, la frequenza di campionamento effettiva potrebbe non corrispondere esattamente alle regole di campionamento configurate. Tuttavia, nel tempo il numero di richieste campionate dovrebbe avvicinarsi alla percentuale configurata.

Ora puoi configurare le regole di campionamento a raggi X direttamente dalla console Amazon. CloudWatch È inoltre possibile continuare a utilizzare la console X-Ray.

CloudWatch console
Per configurare le regole di campionamento nella console CloudWatch
  1. Accedere AWS Management Console e aprire la CloudWatch console all'indirizzo https://console.aws.amazon.com/cloudwatch/.

  2. Scegli Impostazioni nel riquadro di navigazione a sinistra.

  3. Scegliete Visualizza impostazioni in Regole di campionamento all'interno della sezione Tracce X-Ray.

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

    Per modificare una regola, scegli una regola e scegli Modifica per modificarla.

    Per eliminare una regola, scegli una regola e scegli Elimina per eliminarla.

X-Ray console
Per configurare le regole di campionamento nella console X-Ray
  1. Apri la console X-Ray.

  2. Scegli Sampling nel riquadro di navigazione a sinistra.

  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.

Opzioni delle regole di campionamento

Per ogni regola sono disponibili le seguenti opzioni. I valori di stringa possono utilizzare caratteri jolly per corrispondere a un solo carattere (?) o a zero o a più caratteri (*).

Opzioni delle regole di campionamento
  • Nome regola (stringa): un nome univoco per la regola.

  • Priorità (numero intero compreso tra 1 e 9999): la priorità della regola di campionamento. I servizi valutano le regole in ordine crescente di priorità e prendono una decisione sul campionamento in base alla prima regola corrispondente.

  • Reservoir (numero intero non negativo): un numero fisso di richieste corrispondenti allo strumento al secondo, prima dell'applicazione del tasso fisso. Il reservoir non viene utilizzato direttamente dai servizi, ma si applica a tutti i servizi che utilizzano la regola nel loro complesso.

  • Tasso (numero intero compreso tra 0 e 100): la percentuale di richieste corrispondenti allo strumento, dopo l'esaurimento del serbatoio. Quando configuri una regola di campionamento nella console, scegli una percentuale compresa tra 0 e 100. Quando configuri una regola di campionamento in un SDK client utilizzando un documento JSON, fornisci un valore percentuale compreso tra 0 e 1.

  • Nome del servizio (stringa): il nome del servizio strumentato, così come appare nella mappa di traccia.

    • X-Ray SDK: il nome del servizio configurato sul registratore.

    • Amazon API Gateway —api-name/stage.

  • Tipo di servizio (stringa): il tipo di servizio, così come appare nella mappa di traccia. Per X-Ray SDK, imposta il tipo di servizio applicando il plug-in appropriato:

    • AWS::ElasticBeanstalk::Environment— Un AWS Elastic Beanstalk ambiente (plugin).

    • AWS::EC2::Instance— Un'istanza Amazon EC2 (plug-in).

    • AWS::ECS::Container— Un contenitore Amazon ECS (plug-in).

    • AWS::APIGateway::Stage— Una fase di Amazon API Gateway.

    • AWS::AppSync::GraphQLAPI — Una richiesta AWS AppSync API.

  • Host (stringa): il nome host dall'intestazione dell'host HTTP.

  • Metodo HTTP (stringa) — Il metodo della richiesta HTTP.

  • Percorso URL (stringa) — Il percorso URL della richiesta.

    • X-Ray SDK: la parte del percorso dell'URL della richiesta HTTP.

  • ARN della risorsa (stringa) — L'ARN della AWS risorsa che esegue il servizio.

    • X-Ray SDK: non supportato. L'SDK può solo utilizzare le regole con Resource ARN (ARN risorse) impostato su *.

    • Amazon API Gateway: l'ARN di fase.

  • (Facoltativo) Attributi (chiave e valore): attributi del segmento noti al momento della decisione di campionamento.

    • X-Ray SDK: non supportato. L'SDK ignora le regole che specificano degli attributi.

    • Amazon API Gateway: intestazioni della richiesta HTTP originale.

Esempi di regole di campionamento

Esempio — Regola predefinita senza riserva e con una tariffa bassa

Puoi modificare la riserva e la percentuale della regola di default. La regola di default si applica alle richieste che non soddisfano nessun'altra regola.

  • Serbatoio: 0

  • Frequenza: 5 (0.05se configurata utilizzando un documento JSON)

Esempio — Regola di debug per tracciare tutte le richieste relative a un percorso problematico

Un regola ad alta priorità applicata temporaneamente per il debug.

  • Nome della regola: DEBUG – history updates

  • Priorità: 1

  • Serbatoio: 1

  • Frequenza: 100 (1se configurata utilizzando un documento JSON)

  • Nome del servizio: Scorekeep

  • Tipo di servizio: *

  • Ospite: *

  • Metodo HTTP: PUT

  • Percorso URL: /history/*

  • ARN della risorsa: *

Esempio — Tariffa minima più elevata per i POST
  • Nome della regola: POST minimum

  • Priorità: 100

  • Serbatoio: 10

  • Frequenza: 10 (.1se configurata utilizzando un documento JSON)

  • Nome del servizio: *

  • Tipo di servizio: *

  • Ospite: *

  • Metodo HTTP: POST

  • Percorso URL: *

  • ARN della risorsa: *

Configurazione del servizio per l'utilizzo delle regole di campionamento

L'SDK X-Ray richiede una configurazione aggiuntiva per utilizzare le regole di campionamento configurate nella console. Consulta la sezione dedicata alla configurazione per il tuo linguaggio per scoprire i dettagli sulla configurazione di una strategia di campionamento:

Per API Gateway, vedereSupporto di tracciamento attivo di Amazon API Gateway per AWS X-Ray.

Visualizzazione dei risultati del campionamento

La pagina di campionamento della console X-Ray mostra informazioni dettagliate su come i servizi utilizzano ciascuna regola di campionamento.

La colonna Trend (Tendenza) mostra come la regola è stata utilizzata negli ultimi minuti. Ogni colonna mostra le statistiche relative a una finestra di 10 secondi.

Statistiche di campionamento
  • Regola di corrispondenza totale: il numero di richieste corrispondenti a questa regola. Questo numero non include le richieste che avrebbero potuto soddisfare questa regola, ma che hanno soddisfatto prima una regola ad alta priorità.

  • Totale campionato: il numero di richieste registrate.

  • Campionato con tasso fisso: il numero di richieste campionate applicando la tariffa fissa della regola.

  • Campionato con limite di riserva: il numero di richieste campionate utilizzando una quota assegnata da X-Ray.

  • Prese in prestito dal serbatoio: il numero di richieste prese in prestito dal serbatoio. La prima volta che un servizio abbina una richiesta a una regola, X-Ray non gli ha ancora assegnato una quota. Tuttavia, se il serbatoio è almeno 1, il servizio prende in prestito una traccia al secondo fino a quando X-Ray non assegna una quota.

Per ulteriori informazioni sulle statistiche di campionamento e su come i servizi utilizzano le regole di campionamento, consulta Utilizzo delle regole di campionamento con l'API X-Ray.

Passaggi successivi

È possibile utilizzare l'API X-Ray per gestire le regole di campionamento. Con l'API puoi creare e aggiornare le regole in modo programmatico in base a una pianificazione o in risposta ad allarmi o notifiche. Consulta Configurazione delle impostazioni di campionamento e di crittografia tramite l'API AWS X-Ray per le istruzioni di utilizzo e ulteriori esempi di regole.

X-Ray SDK utilizza Servizi AWS anche l'API X-Ray per leggere le regole di campionamento, riportare i risultati del campionamento e ottenere obiettivi di campionamento. I servizi devono tenere traccia della frequenza con cui applicano ogni regola, valutare le regole in base alla priorità e prendere in prestito dal serbatoio quando una richiesta corrisponde a una regola per la quale X-Ray non ha ancora assegnato una quota al servizio. Per ulteriori informazioni su come un servizio utilizza l'API per la campionatura, consulta Utilizzo delle regole di campionamento con l'API X-Ray.

Quando l'SDK X-Ray chiama le API di campionamento, utilizza il demone X-Ray come proxy. Se la porta TCP 2000 è già utilizzata, puoi configurare il daemon per funzionare da proxy su un'altra porta. Per informazioni dettagliate, vedi Configurazione del demone AWS X-Ray.