4.1 - Traçage et observabilité avec X-Ray

L'objectif 4.1 de l'AWS Certified Developer Associate couvre l'observabilité et le traçage distribué. AWS X-Ray trace une requête à travers des services comme Lambda, API Gateway et DynamoDB, montrant une carte des services et où surviennent latence ou erreurs. Pour filtrer et regrouper les traces par une valeur métier, un développeur ajoute une annotation, qu'X-Ray indexe pour la recherche, contrairement aux metadata stockées mais non indexées. Si une Lambda est instrumentée avec le SDK X-Ray mais ne montre aucune trace, la correction est d'activer le traçage actif sur la fonction et d'accorder les permissions d'écriture X-Ray dans son rôle d'exécution, pour que les segments soient réellement envoyés. Tu dois aussi connaître les règles d'échantillonnage, les sous-segments et l'intégration CloudWatch. Attends-toi à des mises en situation demandant la bonne fonction ou correction X-Ray.

Astuce mémoire
Tracer une requête à travers Lambda/API Gateway/DynamoDB = X-Ray. Filtrer/regrouper par valeur métier = annotation (indexée ; les metadata non). Pas de traces d'une Lambda instrumentée = activer le traçage actif + permission d'écriture X-Ray.

Questions d'entraînement

1. Quel service trace une requête à travers Lambda, API Gateway et DynamoDB pour trouver les goulots de latence ?

  • Amazon CloudWatch Logs
  • AWS X-Ray (bonne réponse)
  • AWS CloudTrail
  • Amazon Athena

X-Ray fournit un traçage distribué avec une carte de services et des durées de segments, révélant où la latence s'accumule sur le chemin d'une requête. CloudTrail enregistre les appels d'API ; Logs stockent les journaux texte.

2. Où apparaissent par défaut la sortie console et les erreurs d'une fonction Lambda pour le débogage ?

  • Les journaux d'accès Amazon S3
  • Les événements AWS CloudTrail
  • Le journal système EC2
  • Amazon CloudWatch Logs (bonne réponse)

Lambda diffuse automatiquement stdout/stderr et les erreurs vers un groupe de journaux CloudWatch Logs (nécessite les permissions logs dans le rôle d'exécution). CloudTrail enregistre les appels d'API de gestion, pas la sortie de la fonction.

3. Les messages qui échouent au traitement de façon répétée dans une file SQS doivent être isolés pour inspection ultérieure grâce à quelle fonction ?

  • Le long polling sur la file principale
  • Une file de lettres mortes (DLQ) (bonne réponse)
  • Des minuteurs de délai par message
  • Le short polling sur la file

Une file de lettres mortes reçoit les messages dépassant maxReceiveCount, isolant les messages toxiques pour que la file principale continue de s'écouler et que vous puissiez les déboguer à part.

4. Quel service enregistre qui a effectué un appel d'API AWS donné et quand, pour l'audit et les enquêtes de sécurité ?

  • Les métriques Amazon CloudWatch
  • Les traces AWS X-Ray
  • Amazon Inspector
  • AWS CloudTrail (bonne réponse)

CloudTrail journalise l'activité d'API de gestion et (optionnellement) de données, capturant l'identité, l'heure, l'IP source et les paramètres de chaque appel, ce qui en fait l'outil principal d'audit et d'investigation.

5. Un appel SDK renvoie par intermittence une erreur de série 500 d'un service. Quel est le comportement client approprié ?

  • Échouer immédiatement et alerter l'utilisateur
  • Réessayer avec backoff exponentiel et jitter (bonne réponse)
  • Boucler la relance instantanément sans délai
  • Basculer définitivement vers une autre Région AWS

Les erreurs 5xx sont généralement des problèmes serveur transitoires ; le SDK réessaie les appels idempotents avec backoff exponentiel et jitter. Des relances instantanées en boucle serrée peuvent aggraver la charge et déclencher la limitation.

6. Dans X-Ray, un développeur veut filtrer et grouper les traces par une valeur métier comme customerId. Que doit-il ajouter au segment ?

  • Des champs de métadonnées supplémentaires, qui sont indexés
  • Une annotation, indexée pour le filtrage (bonne réponse)
  • Un taux d'échantillonnage plus élevé sur le service
  • Un sous-segment pour chaque appel aval

Les annotations X-Ray sont des paires clé-valeur indexées permettant de filtrer et grouper les traces. Les métadonnées sont stockées mais non indexées, donc inutilisables dans les expressions de filtre.

Objectifs liés