CloudWatch – Comment enregistrer le temps de chargement de chaque URL dans les logs ?

0

Bonjour, J’utilise CloudWatch pour centraliser les logs d’accès de mon application web. Tout fonctionne bien, mais je ne vois aucune donnée concernant le temps de chargement ou de réponse par URL (ex : /, /login, /api/data, etc.).

Je cherche à inclure le temps de réponse de chaque requête HTTP dans mes logs CloudWatch, afin de suivre les performances par ressource.

J’ai vérifié :

  • Mes logs sont bien envoyés dans CloudWatch via l’agent CloudWatch Logs.
  • Je reçois les URL, les codes de statut, les IP, etc., mais pas la durée des requêtes.
  • J’ai exploré les options de configuration de l’agent, sans succès.

Faut-il ajouter un champ personnalisé côté application ou y a-t-il une option native côté CloudWatch ou ALB/NLB ?

Merci d’avance pour votre aide.

1 réponse
0

Pour inclure le temps de chargement de chaque URL dans vos logs CloudWatch, vous devrez probablement modifier votre application pour enregistrer ces informations. CloudWatch lui-même ne mesure pas automatiquement le temps de réponse pour chaque URL.

Voici quelques approches que vous pouvez envisager :

  1. Modification de l'application : Ajoutez du code dans votre application web pour mesurer le temps de traitement de chaque requête. Vous pouvez ensuite inclure cette information dans vos logs d'application, qui seront ensuite envoyés à CloudWatch.

  2. Utilisation du format de métrique intégré : Si vous développez une application personnalisée, vous pouvez utiliser le format de métrique intégré de CloudWatch dans vos fichiers journaux d'application. Cela vous permettra de créer des métriques personnalisées pour le temps de réponse de chaque URL.

  3. Filtres de métriques : Si vos logs contiennent déjà des informations sur le temps de réponse mais que vous ne les voyez pas dans CloudWatch, vous pouvez utiliser des filtres de métriques pour extraire ces données et créer des métriques à partir de vos logs.

  4. Surveillance synthétique : Pour une approche plus avancée, vous pouvez utiliser CloudWatch Synthetics pour créer des "canaries", qui sont des scripts configurables qui s'exécutent selon un calendrier pour surveiller vos points de terminaison et vos API. Les canaries peuvent vérifier la disponibilité et la latence de vos points de terminaison et stocker les données de temps de chargement.

  5. Application Load Balancer (ALB) : Si vous utilisez un ALB, il peut fournir des métriques de temps de réponse que vous pouvez visualiser dans CloudWatch. Cependant, cela ne sera pas aussi granulaire que le niveau URL individuel.

Quelle que soit l'approche choisie, n'oubliez pas que la collecte de métriques, de logs et de traces par l'agent CloudWatch entraîne des frais. Assurez-vous de prendre en compte les coûts associés à l'augmentation de la quantité de données envoyées à CloudWatch.
Sources
Application logging and monitoring using Amazon CloudWatch - AWS Prescriptive Guidance
Manually create or edit the CloudWatch agent configuration file - Amazon CloudWatch

profile picture
répondu il y a un mois
profile pictureAWS
EXPERT
vérifié il y a un mois

Vous n'êtes pas connecté. Se connecter pour publier une réponse.

Une bonne réponse répond clairement à la question, contient des commentaires constructifs et encourage le développement professionnel de la personne qui pose la question.

Instructions pour répondre aux questions