Est-il possible d'obtenir une liste des processus en cours d'exécution avec une alarme Cloudwatch?

9

Nous avons une instance EC2 (Ubuntu) qui a quelques applications basées sur java et ces derniers temps, nous rencontrons des pics d'utilisation élevée du processeur qui déclenchent l'une de nos alarmes Cloudwatch. Au moment où nous entrons dans le serveur pour examiner l'utilisation du processeur, les choses se sont calmées.

Ce que nous aimerions voir dans l'un des e-mails d'alarme, c'est une liste des processus en cours et leur utilisation du processeur (%) au moment de l'alarme. Est-ce seulement possible?

jtalarico
la source

Réponses:

0

Pour répondre à votre question non. Vous ne pouvez pas configurer CloudWatch pour répertorier les processus sur votre serveur chaque fois qu'un seuil est atteint. Vous devez utiliser un autre logiciel pour y parvenir. CloudWatch enregistre uniquement les métriques, par exemple si vous vouliez savoir combien de processus étaient en cours d'exécution, vous pouvez configurer CloudWatch pour surveiller cela.

bwight
la source
1

Je vous suggère d'essayer d'utiliser la comptabilité des processus et de l'exécuter au sommet pour collecter des instantanés de données système toutes les 10 minutes (par défaut) ou de réduire 5 minutes si vous avez besoin d'une meilleure résolution.

apt-get install atop acct

Ensuite, vous pouvez facilement vérifier ce qui se passait à un moment donné en utilisant une syntaxe comme

atop -r atop.log.file -b 00:00 -e 00:05

l'exemple ci-dessus vous montrera ce qui se passait dans l'instantané d'utilisation du système entre 00:00 et 00:05

Hrvoje Špoljar
la source
1

Je n'ai pas d'expérience en faisant quelque chose de similaire, mais en théorie, il est possible de le faire avec des blocs de construction existants:

CloudWatch -> SNS -> HTTP/HTTPS -> homebrew webapp -> collect data and email it
  • Configurez votre alarme CloudWatch pour qu'elle publie un message SNS dans une rubrique lorsqu'elle se déclenche.
  • Ayez une webapp en cours d'exécution sur votre instance EC2 qui, lorsqu'une adresse particulière est atteinte, recueille la liste des processus en cours d'exécution et l'envoie par e-mail.
  • Ajoutez un abonnement à la rubrique SNS avec le point de terminaison de la webapp. Vous pouvez choisir HTTP ou HTTPS comme protocole.

Vous pouvez combiner cela avec la suggestion d'utiliser atopet de configurer votre application Web pour envoyer les sorties N minutes récentes.

ento
la source