Exemple : Comptage des occurrences d'un terme - Amazon CloudWatch Logs

Exemple : Comptage des occurrences d'un terme

Les événements du journal comprennent fréquemment des messages importants que vous pouvez souhaiter comptabiliser. Il peut s'agir de messages sur l'échec ou la réussite des opérations. Par exemple, une erreur peut se produire et être enregistrée dans un fichier journal en cas d'échec d'une opération spécifique. Il est possible de contrôler ces entrées pour comprendre la tendance de vos erreurs.

Dans l'exemple ci-dessous, un filtre de métrique est créé pour contrôler le terme Erreur. La politique a été créée et ajoutée au groupe de journaux MyApp/message.log. CloudWatch Logs publie un point de données vers la métrique personnalisée ErrorCount de CloudWatch dans l'espace de noms MyApp/message.log avec une valeur de « 1 » pour chaque événement contenant une erreur. Si aucun événement ne contient le mot Erreur, la valeur 0 est publiée. Lors de la représentation de ces données dans la console CloudWatch, veillez à utiliser la statistique de somme.

Après avoir créé un filtre de métriques, vous pouvez afficher la métrique dans la console CloudWatch. Lorsque vous sélectionnez la métrique à afficher, sélectionnez l'espace de noms de la métrique correspondant au nom du groupe de journaux. Pour plus d’informations, consultez la section Affichage des métriques disponibles.

Pour créer un filtre de métrique à l'aide de la console CloudWatch

  1. Ouvrez la console CloudWatch à l'adress https://console.aws.amazon.com/cloudwatch/.

  2. Dans le panneau de navigation, choisissez Log groups (Groupes de journaux).

  3. Choisissez le nom du groupe de journaux.

  4. Choisissez Actions, Create metric filter (Créer un filtre de métrique).

  5. Pour Modèle de filtre, saisissez Error.

    Note

    Toutes les entrées figurant dans Filter Pattern (Modèle de filtre) sont sensibles à la casse.

  6. (Facultatif) Pour tester votre modèle de filtre, sous Test Pattern (Modèle de test), saisissez un ou plusieurs événements du journal à utiliser pour tester le modèle. Chaque événement de journal doit se trouver sur une seule ligne, car des sauts de ligne sont utilisés pour séparer les événements du journal dans la boîte Messages d'événements du journal.

  7. Choisissez Next (Suivant), puis sur la page Assign metric (Affecter une métrique, dans Filter Name (Nom du filtre), tapez MyAppErrorCount.

  8. Sous Metric Details (Détails de la métrique), dans Metric Namespace (Espace de noms de la métrique), tapez MyNameSpace.

  9. Dans Metric Name (Nom de la métrique), tapez ErrorCount.

  10. Confirmez que la Metric Value (Valeur de la métrique) est égale à 1. Cela indique que le décompte est augmenté de 1 pour chaque événement du journal contenant « Erreur ».

  11. Dans Default Value (Valeur par défaut) tapez 0, puis choisissez Next (Suivant).

  12. Choisissez Create metric filter (Créer un filtre de métrique).

Pour créer un filtre de métrique à l'aide de la AWS CLI

A partir d'une invite de commande, exécutez la commande suivante :

aws logs put-metric-filter \ --log-group-name MyApp/message.log \ --filter-name MyAppErrorCount \ --filter-pattern 'Error' \ --metric-transformations \ metricName=ErrorCount,metricNamespace=MyNamespace,metricValue=1,defaultValue=0

Vous pouvez tester cette nouvelle politique en publiant les événements contenant le mot « Erreur » dans le message.

Pour publier des événements à l'aide de la AWS CLI

A partir d'une invite de commande, exécutez la commande suivante. Notez que les modèles sont sensible à la casse.

aws logs put-log-events \ --log-group-name MyApp/access.log --log-stream-name TestStream1 \ --log-events \ timestamp=1394793518000,message="This message contains an Error" \ timestamp=1394793528000,message="This message also contains an Error"