AWS CloudWatch API: получение показателей для всей базы данных - PullRequest
1 голос
/ 20 декабря 2011

Я работаю над многопользовательским приложением, которое создает базы данных MySQL RDS для арендаторов.Многие из этих баз данных могут быть созданы для одного экземпляра БД RDS - они довольно малы, и минимальный размер экземпляра БД составляет 5 ГБ.

Чтобы предоставить статистику использования для каждого арендатора, я собираюсь собратьМетрики CloudWatch (такие как DatabaseConnections, ReadIOPS и т. Д.) Для каждой базы данных арендаторов.

Проблема в том, что я не могу понять, как получить статистику по всей базе данных.Кажется, что API CloudWatch предоставляет метрики только для уровня экземпляра БД, а не для конкретных баз данных.

Есть ли способ получить эту статистику?Или может быть какой-то обходной путь?Буду рад любым советам.

1 Ответ

1 голос
/ 18 января 2012

Что я понимаю, так это то, что вы хотите реализовать «Пользовательские метрики» для cloudwatch. Вот поток, который вы можете реализовать. Я получил на руки то же самое, и он работает круто (пробовал с помощью команды df -h для понимания использования диска для каждого раздела моего экземпляра aws)

  1. подключиться к сервису ec2 с помощью amazon api (restful в порядке)

  2. получить каждый экземпляр и найти их IP-адреса (либо скрыть, либо отфильтровать из доступного списка позже).

  3. используйте ключ безопасности (файл pem), чтобы установить ssh-соединение с IP на шаге 2 (предполагается, что он работает с БД)

  4. используйте удаленную команду (используя ssh) для получения пользовательских метрик.

  5. отформатируйте вывод вышеприведенного шага и отправьте его в cloudwatch.

  6. периодически повторять шаг 4,5, чтобы получить пользовательский функционал метрики.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...