Activer les signaux CloudWatch d'application - Amazon CloudWatch

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.

Activer les signaux CloudWatch d'application

Utilisez les signaux d' CloudWatch application pour piloter automatiquement vos applications AWS afin de suivre les performances des applications par rapport à vos objectifs commerciaux. Application Signals vous fournit une vue unifiée et centrée sur les applications de vos applications Java, de leurs dépendances et de leurs limites. Pour de plus amples informations, veuillez consulter Application Signals.

CloudWatch Application Signals utilise l' CloudWatch agent pour recevoir des métriques et des traces de vos applications instrumentées automatiquement, appliquer éventuellement des règles pour réduire la cardinalité élevée, puis publier la télémétrie traitée sur. CloudWatch Vous pouvez fournir une configuration personnalisée à l' CloudWatch agent spécifiquement pour les signaux d'application à l'aide du fichier de configuration de l'agent. Pour commencer, la présence d'une application_signals section sous la metrics_collected section au sein de la logs section du fichier de configuration de l'agent indique que l' CloudWatch agent recevra des métriques de vos applications instrumentées automatiquement. De même, la présence d'une application_signals section sous la traces_collected section au sein de la traces section du fichier de configuration de l'agent indique que l' CloudWatch agent est activé pour recevoir des traces de vos applications instrumentées automatiquement. En outre, vous pouvez éventuellement transmettre des règles de configuration personnalisées afin de réduire la publication de télémétrie à cardinalité élevée, comme indiqué dans cette section.

  • Pour les EKS clusters Amazon, lorsque vous installez le EKS module complémentaire Amazon CloudWatch Observability, l' CloudWatch agent est activé par défaut pour recevoir à la fois des métriques et des traces de vos applications instrumentées automatiquement. Si vous souhaitez éventuellement transmettre des règles de configuration personnalisées, vous pouvez le faire en transmettant une configuration d'agent personnalisée au EKS module complémentaire Amazon lorsque vous le créez ou le mettez à jour en utilisant une configuration supplémentaire, comme indiqué dans(Facultatif) Configuration supplémentaire.

  • Pour les autres plateformes prises en chargeEC2, notamment Amazon, vous devez démarrer l' CloudWatch agent avec une configuration d'agent qui active Application Signals en spécifiant les application_signals sections et éventuellement les règles de configuration personnalisées, comme indiqué plus loin dans cette section.

Vous trouverez ci-dessous un aperçu des champs du fichier de configuration de l' CloudWatch agent liés aux signaux CloudWatch d'application.

  • logs

    • metrics_collected— Ce champ peut contenir des sections spécifiant que l'agent doit collecter des journaux afin de permettre des cas d'utilisation tels que CloudWatch Application Signals et Container Insights avec une meilleure observabilité pour AmazonEKS.

      Note

      Auparavant, cette section était également utilisée pour spécifier que l'agent doit collecter les journaux au format de métrique intégrée. Ces paramètres ne sont plus nécessaires.

      • application_signals(Facultatif) Spécifie que vous souhaitez permettre à CloudWatch Application Signals de recevoir des métriques de vos applications instrumentées automatiquement afin de faciliter les signaux d' CloudWatch application.

        • rules : (facultatif) un ensemble de règles permettant de sélectionner de manière conditionnelle des métriques et des suivis et d’appliquer des actions pour gérer les scénarios de cardinalité élevée. Chaque règle peut contenir les champs suivants :

          • rule_name : (facultatif) le nom de la règle.

          • selectors : (facultatif) un ensemble de métriques et d’analyseur de dimension de suivis. Chaque sélecteur doit fournir les champs suivants :

            • dimension : obligatoire si selectors n’est pas vide. Cela indique la dimension des métriques et des suivis à utiliser comme filtre.

            • match : obligatoire si selectors n’est pas vide. Un motif de caractères génériques utilisé pour faire correspondre les valeurs de la dimension spécifiée.

          • action : (facultatif) action à appliquer aux métriques et aux suivis correspondant aux sélecteurs spécifiés. La valeur de action doit être l’un des mots clés suivants :

            • keepSpécifie de n'envoyer que les métriques et les traces CloudWatch si elles correspondent auselectors.

            • drop : spécifie de supprimer la métrique et les suivis qui correspondent aux selectors.

            • replace : spécifie de remplacer les dimensions des métriques et des suivis correspondantes aux selectors. Ils sont remplacés conformément à la section replacements.

          • replacements Obligatoire si action a pour valeur replace. Un tableau de paires de dimensions / valeurs qui seront appliquées aux métriques et aux suivis qui correspondent aux selectors spécifiés lorsque action est replace. Chaque remplacement doit fournir les champs suivants :

            • target_dimension : obligatoire si replacements n’est pas vide. Spécifie la dimension à remplacer.

            • value : obligatoire si replacements n’est pas vide. La valeur par laquelle remplacer la valeur target_dimension d’origine.

        • limiter(Facultatif) Utilisez cette section pour limiter le nombre de mesures et de dimensions auxquelles Application Signals envoie CloudWatch, afin d'optimiser vos coûts.

          • disabled(Facultatif) Sitrue, la fonction de limitation des métriques est désactivée. La valeur par défaut est false.

          • drop_threshold(Facultatif) Le nombre maximum de métriques distinctes par service dans un intervalle de rotation qui peuvent être exportées par un CloudWatch agent. La valeur par défaut est 500.

          • rotation_interval(Facultatif) Intervalle auquel le limiteur réinitialise les enregistrements métriques pour le comptage des distinctions. Ceci est exprimé sous la forme d'une chaîne avec une séquence de nombres et un suffixe d'unité. Les fractions sont prises en charge. Les suffixes d'unités pris en charge sont sm,, hms, et us ns

            La valeur par défaut est 1h d'une heure.

          • log_dropped_metrics(Facultatif) Spécifie si l'agent doit écrire des journaux dans les journaux de l' CloudWatch agent lorsque les métriques Application Signals sont supprimées. L’argument par défaut est false.

            Note

            Pour activer cette journalisation, le debug paramètre de la agent section doit également être défini surtrue.

  • traces

    • traces_collected

      • application_signals : facultatif. Spécifiez-le pour permettre à l' CloudWatch agent de recevoir des traces de vos applications instrumentées automatiquement afin de faciliter les signaux CloudWatch d'application.

Note

Même si les règles personnalisées application_signals sont spécifiées dans la section metrics_collected contenue dans la section logs, elles s’appliquent également implicitement à la section traces_collected. Le même ensemble de règles s’appliquera à la fois aux métriques et aux suivis.

Lorsqu’il existe plusieurs règles comportant des actions différentes, elles s’appliquent dans l’ordre suivant : keep, puis drop, puis replace.

Voici un exemple de fichier de configuration d' CloudWatch agent complet qui applique des règles personnalisées.

{ "logs": { "metrics_collected": { "application_signals": { "rules": [ { "rule_name": "keep01", "selectors": [ { "dimension": "Service", "match": "pet-clinic-frontend" }, { "dimension": "RemoteService", "match": "customers-service" } ], "action": "keep" }, { "rule_name": "drop01", "selectors": [ { "dimension": "Operation", "match": "GET /api/customer/owners/*" } ], "action": "drop" }, { "rule_name": "replace01", "selectors": [ { "dimension": "Operation", "match": "PUT /api/customer/owners/*/pets/*" }, { "dimension": "RemoteOperation", "match": "PUT /owners" } ], "replacements": [ { "target_dimension": "Operation", "value": "PUT /api/customer/owners/{ownerId}/pets{petId}" } ], "action": "replace" } ] } } }, "traces": { "traces_collected": { "application_signals": {} } } }

Dans l’exemple de fichier de configuration précédent, les rules sont traitées comme suit :

  1. La règle keep01 garantit que toute métrique et tout suivi dont la dimension Service est pet-clinic-frontend et la dimension RemoteService est customers-service sont conservées.

  2. Pour les métriques et les suivis traités après application de keep01, la règle drop01 garantit que les métriques et les suivis dont la dimension Operation est GET /api/customer/owners/* sont supprimées.

  3. Pour les métriques et les suivis traités après application de drop01, la règle replace01 met à jour les métriques et les suivis dont la dimension Operation est PUT /api/customer/owners/*/pets/* et la dimension RemoteOperation est PUT /owners telles que leur dimension Operation est désormais remplacée par la valeur PUT /api/customer/owners/{ownerId}/pets{petId}.

Voici un exemple complet de fichier de CloudWatch configuration qui gère la cardinalité dans Application Signals en modifiant la limite des métriques à 100, en activant la journalisation des métriques supprimées et en fixant l'intervalle de rotation à deux heures.

{ "logs": { "metrics_collected": { "application_signals": { "limiter": { "disabled": false, "drop_threshold": 100, "rotation_interval": "2h", "log_dropped_metrics": true } } }, "traces": { "traces_collected": { "application_signals": {} } } } }