Utilizzo AWS X-Ray per tracciare le richieste in AWS AppSync - AWS AppSync

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

Utilizzo AWS X-Ray per tracciare le richieste in AWS AppSync

È possibile utilizzare AWS X-Rayper tracciare le richieste man mano che vengono eseguite in AWS AppSync. È possibile utilizzare X-Ray con AWS AppSync in tutte le AWS regioni in cui X-Ray è disponibile. X-Ray offre una panoramica dettagliata di un'intera richiesta GraphQL. Ciò consente di analizzare le latenze nei resolver e nelle fonti di dati sottostanti APIs e nelle relative fonti di dati. È 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.

Per ulteriori informazioni sul campionamento in X-Ray, vedere Configurazione delle regole di campionamento nella console. AWS X-Ray

Installazione e configurazione

È possibile abilitare il tracciamento X-Ray per un GraphQL tramite la console. API AWS AppSync

  1. Accedi alla console. AWS AppSync

  2. Nel riquadro di navigazione scegliere Settings (Impostazioni).

  3. In X-Ray, attivare Enable X-Ray (Abilita X-Ray).

  4. Seleziona Salva. Il tracciamento X-Ray è ora abilitato per te. API

Se utilizzi l'opzione AWS CLI o AWS CloudFormation, puoi anche abilitare il tracciamento a raggi X quando ne crei uno nuovo AWS AppSync API o ne aggiorni uno esistente AWS AppSync API impostando la xrayEnabled proprietà su. true

Quando il tracciamento X-Ray è abilitato per un AWS AppSync API, nell'account viene creato automaticamente un ruolo AWS Identity and Access Management collegato al servizio con le autorizzazioni appropriate. Ciò consente di AWS AppSync inviare tracce a X-Ray in modo sicuro.

Traccia il tuo API con X-Ray

Campionamento

Utilizzando le regole di campionamento, puoi controllare la quantità di dati che registri e modificare immediatamente AWS AppSync il comportamento di campionamento senza modificare o ridistribuire il codice. Ad esempio, questa regola campiona le richieste al GraphQL API con l'APIID. 3n572shhcpfokwhdnq1ogu59v6

  • Nome regola - test-sample

  • Priorità - 10

  • Dimensioni riserva - 10

  • Tasso fisso - 10

  • Nome servizio - *

  • Tipo di servizio - AWS::AppSync::GraphQLAPI

  • HTTPmetodo*

  • Risorsa ARNarn:aws:appsync:us-west-2:123456789012:apis/3n572shhcpfokwhdnq1ogu59v6

  • Host - *

Informazioni sulle tracce

Quando abiliti il tracciamento X-Ray per GraphQLAPI, puoi utilizzare la pagina dei dettagli della traccia X-Ray per esaminare informazioni dettagliate sulla latenza relative alle richieste fatte al tuo. API Nell'esempio seguente viene illustrata la visualizzazione della traccia insieme alla mappa del servizio per questa specifica richiesta. La richiesta è stata effettuata a una API chiamata postAPI con un tipo Post, i cui dati sono contenuti in una tabella Amazon DynamoDB chiamata. PostTable-Example

L'immagine di traccia seguente corrisponde alla seguente query GraphQL:

query getPost { getPost(id: "1") { id title } }

Il resolver per la getPost query utilizza l'origine dati DynamoDB sottostante. La seguente visualizzazione di traccia mostra la chiamata a DynamoDB, nonché le latenze di varie parti dell'esecuzione della query:

Trace view showing client request, postAPI, and DynamoDB with durations and request details.
  • Nell'immagine precedente, /getPost rappresenta il percorso completo dell'elemento che viene risolto. In questo caso, poiché getPost è un campo sul tipo di Query radice, viene visualizzato direttamente dopo la radice del percorso.

  • requestMappingTemplateEvaluationrappresenta il tempo impiegato per AWS AppSync valutare il modello di mappatura delle richieste per questo elemento della query.

  • Query.getPost rappresenta un tipo e un campo (nel formato Type.field). Può contenere più sottosegmenti, a seconda della struttura della richiesta API e della richiesta da tracciare.

    • DynamoDB rappresenta l'origine dati associata a questo resolver. Contiene la latenza della chiamata di rete a DynamoDB per risolvere il campo.

    • responseMappingTemplateEvaluationrappresenta il tempo impiegato per AWS AppSync valutare il modello di mappatura delle risposte per questo elemento della query.

Quando si visualizzano le tracce in X-Ray, è possibile ottenere ulteriori informazioni contestuali e sui metadati sui sottosegmenti del AWS AppSync segmento scegliendo i sottosegmenti ed esplorando la vista dettagliata.

Per alcune interrogazioni complesse o complesse, tenete presente che il segmento inviato a X-Ray da AWS AppSync può essere più grande della dimensione massima consentita per i documenti di segmento, come definito in Segment Documents.AWS X-Ray X-Ray non visualizza i segmenti che superano il limite.