Назад | Перейти на главную страницу

Можно ли получить список запущенных процессов с помощью Cloudwatch Alarm?

У нас есть экземпляр EC2 (Ubuntu), в котором есть несколько приложений на основе Java, и в последнее время мы сталкиваемся с резкими скачками загрузки ЦП, которые вызывают один из наших сигналов тревоги Cloudwatch. К тому времени, как мы подходим к серверу, чтобы посмотреть на загрузку процессора, все успокоилось.

То, что мы хотели бы видеть в одном из электронных писем о тревоге, - это список запущенных процессов и их использование ЦП (%) на момент срабатывания тревоги. Это вообще возможно?

У меня нет опыта делать что-то подобное, но теоретически это возможно сделать с помощью существующих строительных блоков:

CloudWatch -> SNS -> HTTP/HTTPS -> homebrew webapp -> collect data and email it
  • Настройте будильник CloudWatch так, чтобы он публиковал сообщение SNS по теме при срабатывании.
  • На вашем экземпляре EC2 должно быть запущено веб-приложение, которое при попадании на конкретный адрес собирает список запущенных процессов и отправляет его по электронной почте.
  • Добавьте подписку в тему SNS с конечной точкой веб-приложения. Вы можете выбрать HTTP или HTTPS в качестве протокола.

Вы можете объединить это с предложением использовать atop и настройте свое веб-приложение для отправки последних N-минутных выходных данных.

Я предлагаю вам попробовать использовать учет процессов и запускать поверх для сбора снимков системных данных каждые 10 минут (по умолчанию) или уменьшить 5 минут, если вам нужно лучшее разрешение.

apt-get install atop acct

Затем вы можете легко проверить, что происходило в какой-то момент, используя синтаксис вроде

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

пример выше покажет вам, что происходило в моментальном снимке использования системы с 00:00 до 00:05.

Чтобы ответить на ваш вопрос нет. Вы не можете настроить CloudWatch для вывода списка процессов на вашем сервере при достижении порогового значения. Для этого вам придется использовать какое-то другое программное обеспечение. CloudWatch записывает только метрики, например, если вы хотите знать, сколько процессов запущено, вы можете настроить CloudWatch для отслеживания этого.