Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Utilisation AWS X-Ray pour suivre les demandes dans AWS AppSync
Vous pouvez l'utiliser AWS X-Raypour suivre les demandes au fur et à mesure de leur exécution AWS AppSync. Vous pouvez utiliser X-Ray AWS AppSync dans toutes les AWS régions où X-Ray est disponible. X-Ray vous donne un aperçu détaillé de l'intégralité d'une requête GraphQL. Cela vous permet d'analyser les latences de vos résolveurs APIs et sources de données sous-jacents et de leurs sources de données. Vous pouvez utiliser une carte des services X-Ray pour visualiser la latence d'une demande, y compris les AWS services intégrés à X-Ray. Vous pouvez également configurer des règles d'échantillonnage pour indiquer à X-Ray quelles demandes enregistrer et à quelles fréquences d'échantillonnage, selon les critères que vous spécifiez.
Pour plus d'informations sur l'échantillonnage dans X-Ray, consultez Configuration des règles d'échantillonnage dans la AWS X-Ray console.
Installation et configuration
Vous pouvez activer le traçage X-Ray pour un GraphQL API via la AWS AppSync console.
-
Connectez-vous à la AWS AppSync console.
-
Choisissez Paramètres dans le volet de navigation.
-
Sous X-Ray, activez Enable X-Ray (Activer X-Ray).
-
Choisissez Save (Enregistrer). Le traçage par rayons X est désormais activé pour votreAPI.
Si vous utilisez le AWS CLI ou AWS CloudFormation, vous pouvez également activer le traçage X-Ray lorsque vous en créez un nouveau AWS AppSync API ou que vous mettez à jour un existant AWS AppSync API en définissant la xrayEnabled
propriété surtrue
.
Lorsque le suivi X-Ray est activé pour un AWS AppSync API, un rôle AWS Identity and Access Management lié à un service est automatiquement créé dans votre compte avec les autorisations appropriées. Cela permet AWS AppSync d'envoyer des traces à X-Ray de manière sécurisée.
Tracer votre trace API avec X-Ray
Echantillonnage
En utilisant des règles d'échantillonnage, vous pouvez contrôler la quantité de données que vous enregistrez et pouvez modifier le comportement d'échantillonnage à la volée sans modifier ni redéployer votre code. AWS AppSync Par exemple, cette règle échantillonne les requêtes adressées au GraphQL API avec l'APIID. 3n572shhcpfokwhdnq1ogu59v6
-
Rule name (Nom de règle) :
test-sample
-
Priority (Priorité) :
10
-
Reservoir size (Taille du réservoir) :
10
-
Fixed rate (Fréquence fixe) :
10
-
Service name (Nom du service) :
*
-
Service type (Type de service) :
AWS::AppSync::GraphQLAPI
-
HTTPméthode —
*
-
Ressource ARN —
arn:aws:appsync:us-west-2:123456789012:apis/3n572shhcpfokwhdnq1ogu59v6
-
Host (Hôte)
*
Présentation des suivis
Lorsque vous activez le suivi X-Ray pour votre GraphQLAPI, vous pouvez utiliser la page détaillée du suivi X-Ray pour examiner les informations de latence détaillées relatives aux requêtes adressées à votre. API L'exemple suivant montre la vue du suivi ainsi que la carte des services pour cette demande spécifique. La demande a été envoyée à un API appelé postAPI
de type Post, dont les données sont contenues dans une table Amazon DynamoDB appelée. PostTable-Example
L'image de suivi suivante correspond à la requête GraphQL suivante :
query getPost { getPost(id: "1") { id title } }
Le résolveur de la getPost
requête utilise la source de données DynamoDB sous-jacente. La vue de trace suivante montre l'appel à DynamoDB, ainsi que les latences des différentes parties de l'exécution de la requête :
-
Dans l'image précédente,
/getPost
représente le chemin d'accès complet à l'élément en cours de résolution. Dans ce cas,getPost
étant un champ sur le typeQuery
racine, il apparaît directement après la racine du chemin d’accès. -
requestMappingTemplateEvaluation
représente le temps passé à AWS AppSync évaluer le modèle de mappage des demandes pour cet élément de la requête. -
Query.getPost
représente un type et un champ (au formatType.field
). Il peut contenir plusieurs sous-segments, en fonction de la structure de la demande API et de la requête tracée.-
DynamoDB
représente la source de données attachée à ce résolveur. Il contient la latence de l'appel réseau à DynamoDB pour résoudre le champ. -
responseMappingTemplateEvaluation
représente le temps passé à AWS AppSync évaluer le modèle de mappage des réponses pour cet élément de la requête.
-
Lorsque vous visualisez des traces dans X-Ray, vous pouvez obtenir des informations contextuelles et de métadonnées supplémentaires sur les sous-segments du AWS AppSync segment en choisissant les sous-segments et en explorant la vue détaillée.
Pour certaines requêtes profondément imbriquées ou complexes, notez que le segment envoyé à X-Ray par AWS AppSync peut être plus grand que la taille maximale autorisée pour les documents de segment, telle que définie dans AWS X-Ray Segment Documents. X-Ray n'affiche pas les segments qui dépassent la limite.