Мониторинг Web-сервера NGinx с помощью munin

Веб сервер одна из основных составляющих современного сервера. Этим термином обычно описывается как программное обеспечение, так и компьютер, на котором этот сервер работает.
Мы же будим снимать статистику связанную с запросами и состоянием сервера.
Для начала проверю как обстоят дела с этим плагином:

# munin-node-configure --suggest | grep nginx
nginx_request | no | no [no nginx status on http://localhost/nginx_status]
nginx_status | no | no [no nginx status on http://localhost/nginx_status]

Как видно на данный момент на этом локейшине не настроен съём статистики
Что бы добавить его, в файл /etc/nginx/conf.d/tradenark.conf необходимо внести следующее

location /nginx_status {
stub_status on;
access_log off;
allow 127.0.0.1;
deny all;
}

Проверяем конфигурационный файл и перечитываем правила

# nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
# nginx -s reload

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

# vim /etc/munin/plugin-conf.d/munin-node

[nginx*]
env.url http://host.tradenark.com.ua/nginx_status

Проверяем снова:

# munin-node-configure --suggest | grep nginx
nginx_request | no | yes
nginx_status | no | yes

Отлично, мунин может снимать статистику с этих плагинов. Теперь их необходимо добавить:

munin-node-configure --shell | grep nginx | sh -x
+ ln -s /usr/share/munin/plugins/nginx_request /etc/munin/plugins/nginx_request
+ ln -s /usr/share/munin/plugins/nginx_status /etc/munin/plugins/nginx_status

Симлинки созданы. Перезапускаем сервис и убедимся, что всё в порядке:

# service munin-node restart
Stopping Munin Node agents: [ OK ]
Starting Munin Node: [ OK ]

# telnet localhost 4949
Trying ::1...
Connected to localhost.
Escape character is '^]'.
# munin node at localhost.localdomain
list
... nginx_request nginx_status ...
quit
Connection closed by foreign host.

Эти 2 счётчика указывают на то, что показания снимаются. Что бы убедится, что всё работает можно запустить проверочный скрипт:

# cd /usr/share/munin/plugins/
# munin-run nginx_request
request.value 12939
# munin-run nginx_status
total.value 8
reading.value 0
writing.value 1
waiting.value 7

Картинки:
nginx_request-day

nginx_status-day

Добавить комментарий