Я прошел через некоторые инструменты, такие как nagios, collectd, но они не найдут лучшего, поскольку нам нужно отслеживать no_of_req/sec для каждого виртуального хоста со всем статусом ответа с временем отклика.Как отслеживать запросы nginx
0
A
ответ
0
Я использую ELK Stack
:
Отдельные журналы доступа для каждого блока сервера для лучшей видимости или вы можете отделить диаграммы через URL.
Затем используйте ELK stack
:
- Кормовые журналы в logstash через filebeat.
- Создать
grok
шаблон для вашей модели журнала. - Создание диаграмм через
kibana
и мониторинг в режиме реального времени.
Для мониторинга в режиме реального времени:
Попробуйте netdata, его удивительно. Обратите внимание, что это не замена для nagios или zabbix.
0
После нескольких быстрых исследований я нашел следующее: check_nginx_status.pl. Я думаю, что определение чего-то типа:
define command {
command_name check-nginx
command_line $USER1$/check_nginx_status.pl -H $HOSTADDRESS$ -s $ARG1$ -u $ARG2$ $ARG3$ $ARG4$ $ARG5$ $ARG6$
}
, вероятно, именно то, что вы ищете.
Флаг -s ($ ARG1 $) будет имя хоста виртуального хоста
флаг -u ($ ARG2 $) будет конкретный URL (/ что-то/статус)
И то остальные аргументы будут использоваться, если вам нужно добавить дополнительные флаги.
Надеюсь, это поможет!
ELK означает Эластичный поиск, Logstash и Kibana –
Я этого не понял. –
мы используем efk: эластичный, fluentd и kibana, но главная проблема здесь в том, как контролировать nginx, здесь мониторинг - это не только файл журнала. В мониторинге мне нужны данные, такие как req/s, load, используемые рабочие (когда их увеличить), cpu, используемый nginx и т. Д. –