Visualiser la topologie de votre application et surveiller son état de fonctionnement à l’aide de la carte d’application CloudWatch - Amazon CloudWatch

Visualiser la topologie de votre application et surveiller son état de fonctionnement à l’aide de la carte d’application CloudWatch

Note

La carte d’application CloudWatch remplace la carte de service. Pour afficher une carte de votre application basée sur des suivis AWS X-Ray, ouvrez la Carte de suivi X-Ray. Choisissez Carte de suivi dans la section X-Ray du volet de navigation de gauche de la console CloudWatch.

Après avoir activé votre application pour la vigie applicative CloudWatch, la carte d’application affiche les nœuds représentant vos groupes. Vous pouvez ensuite explorer ces groupes pour afficher vos services et leurs dépendances. Utilisez la carte d’application pour afficher la topologie de vos clients d’application, de vos canaries synthétiques, de vos services et de leurs dépendances, et surveiller l’état de leurs services. Pour afficher la carte d’application, ouvrez la console CloudWatch et sélectionnez Carte d’application dans la section Vigie applicative du volet de navigation gauche.

Après avoir activé votre application pour la vigie applicative, utilisez la carte d’application pour faciliter la surveillance de l’état de fonctionnement de votre application :

  • Visualisez les connexions entre les nœuds de client, de script canary, de service et de dépendance pour vous aider à comprendre la topologie et le flux d’exécution de votre application. Cela est particulièrement utile si vos opérateurs de services ne font pas partie de votre équipe de développement.

  • Découvrez quels services répondent ou non à vos objectifs de niveau de service (SLO). Lorsqu’un service ne respecte pas vos SLO, vous pouvez rapidement identifier si un service en aval ou une dépendance peut contribuer au problème ou avoir un impact sur plusieurs services en amont.

  • Sélectionnez un nœud de client individuel, de script canary synthetics, de service ou de dépendance pour voir les métriques associées. La page Détails du service affiche des informations plus détaillées sur les opérations, les dépendances, les canaries synthétiques et les pages client.

  • Filtrez et zoomez sur la carte d’application pour vous concentrer plus facilement sur une partie de la topologie de votre application ou pour afficher la carte dans son intégralité. Créez un filtre en choisissant une ou plusieurs propriétés dans la zone de texte du filtre. Au fur et à mesure que vous choisissez chaque propriété, vous êtes guidé à travers les critères de filtrage. Vous verrez le filtre complet sous la zone de texte du filtre. Choisissez Effacer les filtres à tout moment pour supprimer le filtre.

  • Regroupez et filtrez les services pour créer des vues personnalisées qui correspondent à vos flux de travail. Cette organisation vous aide à trouver et à accéder rapidement aux services que vous utilisez le plus fréquemment

  • Enregistrez vos vues filtrées et regroupées pour revenir rapidement aux configurations fréquemment utilisées

Explorer la carte d’application

Lorsque vous consultez la carte d’application, celle-ci affiche par défaut les services regroupés par Services associés. Les services associés regroupent les services en fonction de leurs dépendances. Par exemple, si le service A appelle le service B, qui appelle le service C, ils sont regroupés sous le service A. Vous pouvez afficher l’état SLI, les métriques et le nombre de services pour tous les services de chaque groupe.

Carte d’application par défaut de CloudWatch regroupée par services associés.

Regroupement et filtrage dynamiques

Vous pouvez cliquer sur le menu déroulant Regrouper par pour utiliser différentes options de regroupement. Par défaut, la carte d’application propose deux regroupements :

  • Services associés : regroupe les services en fonction de leurs dépendances

  • Environnement : regroupe les services en fonction de leur environnement

Si vous voulez définir votre propre regroupement personnalisé, cliquez sur Gérer les groupes pour définir des groupes personnalisés, puis baliser vos services ou ajouter des attributs de ressource OTEL avec la clé de groupe.

Le regroupement par défaut dans la vigie applicative organise automatiquement les services en fonction de leurs dépendances en aval. Le système analyse le graphique de dépendance des services et crée des groupes dont le nom correspond au nœud racine (un service sans dépendances en amont). Tous les services qui dépendent directement ou indirectement de ce service racine sont automatiquement inclus dans le groupe. Par exemple, si le service A appelle le service B, qui à son tour appelle le service C, les trois services seront regroupés avec le service A comme nom de groupe, car il s’agit de la racine de la chaîne de dépendance. Ce mécanisme de regroupement automatique offre un moyen naturel de visualiser et de gérer les services associés en fonction de leurs interactions et dépendances réelles lors de l’exécution.

Actions et informations sur les groupes

Pour chaque groupe, vous pouvez effectuer les actions suivantes :

  • Cliquez sur Afficher les informations pour afficher les graphiques des métriques et la dernière heure de déploiement du groupe

  • Cliquez sur Afficher le tableau de bord pour afficher le tableau de bord des métriques et la liste des services du groupe

Vous pouvez également utiliser Regrouper et filtrer dans la barre de gauche pour filtrer les groupes qui ont des services avec une heure de déploiement, un état SLI ou un type de plateforme de calcul.

Utilisez la barre Rechercher et filtrer pour rechercher des groupes par nom ou rechercher des groupes qui contiennent un environnement de service ou une dépendance spécifique.

Configuration de groupes personnalisés

Le regroupement personnalisé vous permet d’organiser vos services de manière logique en fonction de vos besoins commerciaux et de vos priorités opérationnelles. Cette fonctionnalité vous permet d’afficher et d’enregistrer des vues définies en fonction de vos besoins spécifiques, de créer des groupes en fonction de l’appartenance à une équipe et de regrouper les services nécessaires aux transactions commerciales critiques.

Créez les noms de groupes personnalisés (les noms de groupes que vous verrez dans l’interface utilisateur) et les noms de clés de groupe correspondants. Effectuez cette étape à partir de l’interface utilisateur de la vigie applicative, ou à l’aide de l’API PutGroupingConfiguration.

Les noms de clés de groupe peuvent être soit une clé de balise AWS, soit un attribut de ressource OTEL pour votre service. Lorsque vous choisissez entre les balises et les attributs de ressource OTEL, tenez compte de votre plateforme de calcul :

  • Pour les plateformes à service unique (par exemple, Lambda ou groupe Autoscaling) : utilisez les balises AWS

  • Pour les plateformes multiservices (par exemple, le cluster Amazon EKS) : utilisez les attributs de ressource OTEL pour un regroupement plus granulaire

Ajout de balises AWS

Ajoutez une balise AWS avec la clé de groupe personnalisée comme une clé et une valeur à un cluster Amazon EKS. Lorsque plusieurs services sont exécutés dans un cluster Amazon EKS, ils sont tous balisés avec la même clé de groupe personnalisée. Par exemple, lorsque le cluster Amazon EKS A exécute les services 1, 2 et 3, l’ajout d’une balise AWS avec la clé Équipe X au cluster ajoutera les trois services à Équipe X. Pour ajouter uniquement des services spécifiques à Équipe X, ajoutez des attributs de ressource OTEL pour les services comme indiqué ci-dessous.

Ajout d’attributs de ressource OTEL

Pour ajouter un attribut de ressource OTEL, consultez la configuration ci-dessous :

Configuration générale

Configurez la variable d’environnement OTEL_RESOURCE_ATTRIBUTES dans votre application à l’aide des paires clé-valeur de groupe personnalisées. Les clés sont répertoriées sous aws.application_signals.metric_resource_keys, séparées par &.

Par exemple, pour créer des groupes personnalisés en utilisant Application=PetClinic et Owner=Test, procédez comme suit :

OTEL_RESOURCE_ATTRIBUTES=Application=PetClinic,Owner=Test,aws.application_signals.metric_resource_keys=Application&Owner

Configuration spécifique à la plateforme

Voici les spécifications de déploiement.

Amazon EKS et Kubernetes natif

apiVersion: apps/v1 kind: Deployment metadata: ... spec: replicas: 1 ... template: spec: containers: - name: your-app image: your-app-image env: ... - name: OTEL_RESOURCE_ATTRIBUTES value: Application=PetClinic,Owner=Test,aws.application_signals.metric_resource_keys=Application&Owner

Amazon EC2

Ajoutez OTEL_RESOURCE_ATTRIBUTES au script de démarrage de votre application. Pour obtenir l’exemple complet, consultez Ajout de OTEL_RESOURCE_ATTRIBUTES.

... OTEL_RESOURCE_ATTRIBUTES="service.name=$YOUR_SVC_NAME,Application=PetClinic,Owner=Test,aws.application_signals.metric_resource_keys=Application&Owner" \ java -jar $MY_JAVA_APP.jar

Amazon ECS

Ajoutez OTEL_RESOURCE_ATTRIBUTES à TaskDefinition. Pour obtenir l’exemple complet, consultez Activer sur Amazon ECS.

{ "name": "my-app", ... "environment": [ { "name": "OTEL_RESOURCE_ATTRIBUTES", "value": "service.name=$YOUR_SVC_NAME,Application=PetClinic,Owner=Test,aws.application_signals.metric_resource_keys=Applicationmanagement portalOwner" }, ... ] }

Lambda

Ajoutez OTEL_RESOURCE_ATTRIBUTES à la variable d’environnement Lambda.

OTEL_RESOURCE_ATTRIBUTES="Application=PetClinic,Owner=Test,aws.application_signals.metric_resource_keys=Application&Owner"

Affichage des services au sein des groupes

Pour afficher les services et leurs dépendances au sein d’un groupe, cliquez sur le nom du groupe. Une carte des services au sein du groupe s’affichera. Chaque nœud de service affichera l’état SLI, les métriques et les détails de la plateforme. Les services présentant une violation SLI sont mis en évidence afin d’être facilement reconnaissables.

Carte des services CloudWatch au sein du groupe.

Tous les canaries, clients RUM et nœuds de service AWS seront réduits par défaut. Si les services de ce groupe font appel à des services qui ne font pas partie de ce groupe, ils seront également réduits par défaut.

Si votre carte est encore trop grande pour permettre une analyse efficace, vous pouvez appliquer un regroupement imbriqué afin d’affiner votre analyse. Par exemple, après avoir regroupé les services par unité commerciale, si vous avez encore trop de services dans un groupe, utilisez le menu déroulant Regrouper par pour sélectionner Équipe, créant ainsi une structure de regroupement imbriquée.

Informations et détails sur les services

Sur cette page, vous pouvez également cliquer sur Enregistrer la vue à côté de la barre de recherche pour enregistrer votre vue afin de ne pas avoir à appliquer à nouveau le même regroupement et le même filtrage la prochaine fois.

Cliquez sur Afficher les informations dans le nœud de service pour afficher l’audit du service, les événements de modification, l’état SLI et les graphiques de métriques.

Informations sur le service de carte d’application CloudWatch.

Si vous voulez afficher le fonctionnement du service et d’autres détails sur le service, cliquez sur Afficher plus de détails pour accéder à la page de présentation du service.

Vous pouvez également cliquer sur Périphérie pour afficher les métriques d’un appel de dépendance spécifique d’un service.

Suivi du dernier déploiement

Suivez les activités de déploiement grâce au traitement automatique des événements CloudTrail par la vigie applicative. Surveillez les temps de déploiement des services et de leurs dépendances, ce qui vous fournit un contexte immédiat pour l’analyse opérationnelle et le dépannage. La vigie applicative établit automatiquement une corrélation entre les délais de déploiement et les changements de performances, vous permettant ainsi d’identifier rapidement si les déploiements récents ont contribué à des problèmes de service. Consultez l’historique des déploiements et leur impact sur vos services sans configuration ni paramétrage supplémentaire.

Résultats d’audit

Découvrez des informations essentielles grâce aux résultats d’audit de la vigie applicative. La vigie applicative examine vos applications afin de signaler les observations importantes. Ces résultats automatisés vous aident à identifier facilement une cause racine des problèmes d’état de vos services. La vigie applicative utilise des analytiques avancées pour détecter des tendances, mettre en évidence les inefficacités en matière de ressources et formuler une suggestion d’opportunités d’optimisation. Les résultats sont classés par ordre de priorité en fonction de leur gravité et de leur impact potentiel sur l’activité, ce qui permet aux équipes de se concentrer en premier lieu sur les problèmes les plus critiques. Obtenez des recommandations exploitables pour améliorer la fiabilité et les performances du service sans analyse manuelle.

Sélectionnez un onglet pour obtenir des informations sur l’exploration de chaque type de nœud et les connexions entre eux.

View your application services

Vous pouvez afficher vos services d’application et l’état de leurs SLO et indicateurs de niveau de service (SLI) dans Carte d’application. Si vous n’avez pas créé de SLO pour un service, cliquez sur le bouton Créer un SLO sous le nœud du service.

La Carte d’application affiche tous vos services. Elle indique également les clients et les canaries qui utilisent le service, ainsi que les dépendances que vos services appellent, comme le montre l’image suivante :

Une carte d’application de CloudWatch affichant les services sains et non sains.

Lorsque vous sélectionnez un nœud de service, un volet s’ouvre et affiche des informations détaillées sur le service :

  • Fréquence totale des erreurs et des défaillances.

  • Le nombre de SLI et de SLO qui sont healthy ou unhealthy.

  • L’option permettant d’afficher plus d’informations sur un SLO.

  • Les Cluster, Namespace et Workload pour les services hébergés dans Amazon EKS, ou l’environnement pour les services hébergés dans Amazon ECS ou Amazon EC2. Pour les services hébergés dans Amazon EKS, choisissez n’importe quel lien pour ouvrir CloudWatch Container Insights.

  • ID du compte et région.

  • La section Modifier affiche l’historique et le calendrier des déploiements récents.

  • L’onglet Audit opérationnel fournit des résultats d’audit automatisés et des recommandations.

  • Graphique des métriques de service sur la disponibilité, la latence, les défaillances et les erreurs.

Sélectionnez une périphérie ou une connexion entre un nœud de service et un service en aval ou un nœud de dépendance. Cela ouvre un volet contenant les chemins d’accès les plus fréquents par taux de défaillance, latence et taux d’erreur, comme le montre l’exemple d’image suivant. Sélectionnez n’importe quel lien dans le volet pour ouvrir la page Détails du service et afficher des informations détaillées sur le service ou la dépendance choisie.

Une périphérie de service de carte d’application CloudWatch

Lorsque vous sélectionnez un nœud périphérique, un volet s’ouvre et affiche des informations détaillées sur le service :

  • Nombre total de demandes, latence, taux d’erreur et taux de défaillance

  • Principaux chemins d’accès par taux de défaillance

  • Principaux chemins d’accès par latence

  • Principaux chemins d’accès par taux d’erreur

View dependencies

Les dépendances de votre application sont affichées sur la carte d’application, connectées aux services qui les appellent.

Sélectionnez un nœud de dépendance pour ouvrir un volet contenant le taux d’erreur et le taux de défaillance, le graphique des métriques pour les demandes, la disponibilité, la latence, le taux de défaillance et le taux d’erreur.

Carte d’application CloudWatch affichant un nœud de dépendance d’un service AWS extensible.
View clients

Une fois que vous avez activé le traçage X-Ray pour vos clients Web CloudWatch RUM, ceux-ci s’affichent sur la carte des applications connectés aux services qu’ils appellent.

Sélectionnez un nœud client pour ouvrir un volet affichant des informations détaillées sur le client :

  • Métriques relatives au chargement des pages, au temps de chargement moyen, aux erreurs et aux données vitales moyennes sur le Web

  • Un graphique présentant la répartition des erreurs

  • Lien permettant d’afficher les informations du client dans CloudWatch RUM

Une carte d’application CloudWatch affichant un nœud client extensible.

Sélectionnez Afficher le tableau de bord pour ouvrir les détails du canary.

View synthetics canaries

Pour afficher les canaris sur votre carte des applications, activez le traçage X-Ray pour vos canaries CloudWatch Synthetics. Une fois activés, les canaries apparaîtront connectés à leurs services appelés sur la carte d’application.

Le système regroupe par défaut les canaries dans une seule icône extensible. Le volet d’informations détaillées sur les canaries affiche les métriques, les traces et les informations d’état.

Sélectionnez un nœud canary pour ouvrir un volet affichant des informations détaillées sur les canaries, comme illustré dans l’image suivante :

Une carte d’application CloudWatch affichant un nœud synthetics canary extensible.

Sélectionnez Afficher le tableau de bord pour ouvrir les détails du canary.