.
11 июня 2013

Какой vhost грузит систему — текущая активность mysql и apache

posted in SEO |

В статье Защита от DDOS — первые шаги был упомянут скрипт контроля LA, собственно который я успешно реализовал ...
После написания он временами начал отрабатывать — и встал вопрос «Какой же именно виртуальный хост даёт нагрузку?»
Стандартные средства мониторинга нагрузки вроде ps -waux показывают только процессы грузящие систему — множественные httpd.
Как узнать какой же именно сайт создаёт нагрузку на сервер?
Для ответа на этот вопрос были установлены инструменты для мониторинга:
* mod_status — apache модуль с возможностью просмотра текущей нагрузки по виртуальным хостам
* MyTop: top для MySQL с возможностью просмотра какие именно запросы обрабатываются в данный момент к каким базам данных

Для сбора статистике в скрипте к mod_status я не придумал ничего кроме как дёргать его wget-ом c ключем -O для вывода результата в необходимый мне файл.
Для консольного запуска mytop используем ключ -b

В итоге для сбора статистики получилось такое:

ps -waux > ps-$(date +%Y%m%d%H%M)
mytop -b > mytop-$(date +%Y%m%d%H%M)
wget http://mod_status_server.ru:8080/modstatus/ -O wget-$(date +%Y%m%d%H%M)

В принципе можно грузящий процесс выудить ps-ом и грепануть на его наличие логи.

Яндекс.Метрика