Мониторинг Nginx с помощью Nixstats

Sep 11, 2017 14:52 · 216 words · 2 minute read nixstats monitoring nginx

В одной из предыдущих статей мы рассматривали Nixstats — [пока] бесплатный сервис для мониторинга, отображения статистики сервера и оповещения о проблемах.

Давайте разберемся с настройкой мониторинга web-сервера Nginx с помощью этого сервиса!

От web-сервера Nginx сервис Nixstats принимает следующие метрики:

  • Requests per second;
  • Accepts per second;
  • Handled per second;
  • Total requests;
  • Active connections;
  • Writing;
  • Waiting;
  • Reading.

В вашей ОС должен быть установлен пакет urllib2 (подробности), а web-сервер Nginx должен быть собран с параметром --with-http_stub_status_module

Страница статуса Nginx’а (status page) должна быть включена. Например, так:

server {
    listen 127.0.0.1:8080;
    server_name localhost;
    location /status_page {
        stub_status on;
        allow 127.0.0.1;
        deny all;
    }
}

В данном примере страница статуса доступна только с того сервера, где запущен Nginx и открывается на порту 8080. Измените данные параметры под ваши нужды.

Проверить корректность настройки страницы статуса можно с помощью команды:

wget -qO- http://127.0.0.1:8080/status_page

Для включения плагина необходимо открыть конфигурационный файл /etc/nixstats.ini и добавить (раскомментировать) следующие строки:

[nginx] 
enabled = yes
status_page_url = http://127.0.0.1:8080/status_page

Убедимся, что все настроено верно, выполнив команду:

nixstatsagent --test nginx

Результат выполнения должен быть примерно следующим:

nginx:
{
    "accepts": 505768,
    "accepts_per_second": 0.0,
    "active_connections": 198,
    "handled": 505768,
    "handled_per_second": 0.0,
    "reading": 0,
    "requests": 8335225,
    "requests_per_second": 0.0,
    "waiting": 196,
    "writing": 2
}

Перезапускаем агент мониторинга с помощью команды:

service nixstatsagent restart

Через пару минут новые метрики будут доступны в веб-интерфейсе системы мониторинга.

tweet Share