Comment filtrer les journaux CloudWatch de surveillance améliorée (Enhanced Monitoring) afin de générer des métriques personnalisées automatisées pour Amazon RDS ?

Lecture de 4 minute(s)
0

Je souhaite filtrer la surveillance améliorée d'Amazon CloudWatch Logs afin de générer des métriques personnalisées automatisées pour Amazon Relational Database Service (Amazon RDS).

Brève description

La surveillance améliorée pour Amazon RDS fournit les indicateurs de système d'exploitation suivants :

  • Mémoire gratuite
  • Mémoire active
  • Swap gratuit
  • Processus en cours
  • Système de fichiers utilisé

Utilisez ces métriques Pour comprendre les performances de l'environnement, vous pouvez utiliser ces métriques du système d'exploitation. Amazon CloudWatch Logs ingère ces métriques sous forme d'entrées de journal. Vous pouvez utiliser CloudWatch pour créer des alarmes basées sur des métriques. Ces alarmes exécutent des actions, et vous pouvez publier ces métriques depuis votre infrastructure, votre appareil ou votre application dans CloudWatch en tant que métrique personnalisée. Pour utiliser la surveillance améliorée et CloudWatch pour automatiser les tâches, créez une métrique personnalisée pour la date ingérée par CloudWatch Logs Amazon RDS à partir des métriques de surveillance améliorée.

Résolution

Remarque : Si vous recevez des erreurs lors de l'exécution des commandes d'AWS Command Line Interface (AWS CLI), assurez-vous que vous utilisez la version la plus récente de l'interface de ligne de commande AWS.

Utiliser des filtres sur un groupe de journaux pour créer une métrique personnalisée

Remarque : Ces étapes nécessitent que vous activiez la surveillance améliorée dans votre instance de base de données Amazon RDS. Pour plus d'informations, consultez la section Surveillance des métriques dans une instance Amazon RDS.

  1. Activez la surveillance améliorée.

  2. Ouvrez la console Amazon CloudWatch, puis choisissez Groupes de journaux dans le volet de navigation.

  3. Filtrez RDSOsmetrics dans la liste des Groupes de journaux, puis choisissez Actions.

  4. Choisissez Créer un filtre métrique, puis entrez un terme de Modèle de filtre pour votre instance de base de données Amazon RDS. Par exemple :

    DISK WRITE KBPS GREATER THAN OR EQUAL TO 10 : { $.diskIO[0].writeKbPS >= 10.00 }
    DISK READ KBPS GREATER THAN OR EQUAL TO 10 : { $.diskIO[0].readKbPS >= 10.00 }
    DISK WRITE IOPS PS GREATER THAN 15 : { $.diskIO[0].writeIOsPS > 15.00 }
    DISK READ IOPS PS GREATER THAN 15 : { $.diskIO[0].readIOsPS > 15.00 }
    TOTAL CPU UTILIZATION GREATER THAN OR EQUAL TO 80 : { $.cpuUtilization.total >= 80 }
    FREE MEMORY LESS THAN OR EQUAL TO 200000 KB : { $.memory.free <= 200000 }

    Remarque : Mettez à jour les valeurs en fonction de votre environnement.

  5. Choisissez Données du journal, puis sélectionnez Modèle de test.

  6. Sélectionnez Suivant.

  7. Entrez un Nom de filtre, puis choisissez un Espace de noms de métrique et un Nom de métrique.

  8. Entrez une Valeur métrique. Par exemple, $.cpuUtilization.idle. Choisissez ensuite Créer un filtre.

    Pour chaque métrique supplémentaire que vous ajoutez, répétez ces étapes.

Automatisez vos indicateurs

Pour automatiser le processus de surveillance des plus de 60 mesures de surveillance de chaque instance de base de données Amazon RDS, utilisez un script. Pour voir un exemple de script utilisant une instance de base de données Amazon RDS pour MySQL, consultez rds-support-tools sur le site web de GitHub. L'exemple de script fonctionne avec les moteurs suivants :

  • MySQL
  • Maria DB
  • Édition compatible avec Amazon Aurora MySQL
  • Édition compatible avec Amazon Aurora PostgreSQL
  • PostgreSQL

Spécifiez l'instance de base de données Amazon RDS sur laquelle la surveillance améliorée est activée et l'espace de noms dans lequel vous souhaitez que ces métriques résident. Ajoutez éventuellement les noms des métriques et de la région AWS. Si vous ne spécifiez aucun champ facultatif, le script prend en compte toutes les mesures à publier. Le script vérifie ensuite dans le fichier .aws/config la région AWS par défaut définie pour l'AWS CLI.

Remarque : Le script ne crée pas de métriques pour la liste des processus. Selon le processus que vous souhaitez afficher, vous devrez peut-être créer des filtres manuellement.

Utilisez le modèle suivant pour spécifier les noms des métriques :

group.metricname

L'exemple de code suivant illustre un appel pour activer cette métrique pour cpuUtilization.idle et diskIO.readKbPS :

python RDSCreateMetricsFromEnhancedMonitoring.py --rds\_instance mysqltest --namespace MySQL --metrics\_to\_filter cpuUtilization.idle diskIO.readKb

Vous pouvez ensuite créer des alarmes pour ces métriques personnalisées. Pour plus d'informations, consultez la section Utilisation des alarmes Amazon CloudWatch.

Informations connexes

Surveillance des fichiers journaux Amazon RDS

Utilisation de filtres métriques pour faire correspondre les termes et extraire les valeurs des événements du journal JSON

AWS OFFICIEL
AWS OFFICIELA mis à jour il y a 8 mois