Я начинаю с Nagios, и я пытаюсь отслеживать, запущен ли конкретный процесс на моей машине unix или нет. Сервер и клиент находятся на одной машине: пытаемся отслеживать эту машину с помощью Nagios, работающего на ней. Я установил Nagios Core 4, nrpe и его плагины. Посмотрев в Интернете, я нашел ответ о том, как отслеживать процесс с помощью плагина check_procs (вверх или вниз), и это то, что на самом деле есть в моих файлах:
1- в /etc/nagios/nrpe.cfg
server_address=127.0.0.1
command[check_service]=/usr/lib/nagios/plugins/check_procs -c 1: -C $ARG1$
2- Я создал файл с именем «ubunutu_host.cfg» в / usr / local / nagios / etc / servers /:
# Ubuntu Host configuration file
define host {
use linux-server
host_name ubuntu_host
alias Ubuntu Host
address 127.0.0.1
register 1
}
define service {
host_name ubuntu_host
service_description check_apache2
check_command check_service!apache2
max_check_attempts 2
check_interval 2
retry_interval 2
check_period 24x7
check_freshness 1
contact_groups admins
notification_interval 2
notification_period 24x7
notifications_enabled 1
register 1
}
3- В /etc/nagios-plugins/configp/rocs.cfg:
define command{
command_name check_service
command_line /usr/lib/nagios/plugins/check_procs -c 1: -C ‘$ARG1$’
}
Моя проблема: при запуске этой команды:
/usr/lib/nagios/plugins/check_procs -c 1: -C apache2
вот что у меня есть в результате
PROCS OK: 7 processes with command name 'apache2' | procs=7;;1:;0;
НО В Nagios, ниже того, что у меня есть (apache2 всегда критичен): Проблема proc apache2 всегда отображается как критическая
Не знаю, разрешили ли вы это уже, но я вижу, что проблема в том, что у вас есть хитроумные кавычки вокруг $ ARG1 $ в определении вашей команды.
У тебя есть ‘$ARG1$’
но это должно быть '$ARG1$'
(или даже $ARG1$
если в аргументе никогда не будет пробелов!).