Назад | Перейти на главную страницу

NRPE (Winrpe) Powershell Command - Невозможно прочитать вывод в Nagios

Я пытаюсь запустить сценарий Powershell из NRPE.cfg и получить результат в Nagios.

Когда я запускаю сценарий на локальном (Windows) сервере, все в порядке. Но когда я помещаю его в NRPE.cfg и пытаюсь получить вывод в Nagios, я получаю ошибку «Невозможно прочитать вывод».

Искал в Интернете, но не нашел решения, так что, возможно, вы мне поможете ...

Команда / сценарий:

команда [check_veeam_dailyone] = cmd / c echo c: \ install \ veeam_check.ps1; выход ($ lastexitcode) | powershell.exe -ExecutionPolicy Bypass -noninteractive -noprofile -File -

Когда я помещаю это на сервер Windows в PowerShell, я получаю такой вывод:

PS C: \ Install> OK - Задание: VeeamOne_Daily успешно завершено 09.10.2014 04:45:51.

Часть "PS C: \ Install>" выглядит странно, но она читает последнее задание, поэтому кажется "в порядке" ..

Но когда я пытаюсь получить этот вывод в Nagios с помощью:

root @ nagios: ~ # / usr / lib / nagios / plugins / check_nrpe -H 192.168.1.1 -t 300 -c check_veeam_dailyone

Он говорит:

NRPE: невозможно прочитать вывод

NRPE работает нормально, потому что, когда я пытаюсь получить другую команду, например диск C, все в порядке:

/ usr / lib / nagios / plugins / check_nrpe -H 192.168.1.1 -t 300 -c pdm_disk_c ДИСК ОК - использование: C: 38717,2 МБ (63,12% от общего числа 61337,0 МБ) | 'disk in use' = 38717,2 МБ; «использование диска» = 63,12%; 90; 95; 'disk total' = 61337.0MB;

Просто не могу понять, что случилось.

Я использую следующий сценарий:

http://exchange.nagios.org/directory/Plugins/Backup-and-Recovery/Others/check_veeam_backups/details

Спасибо за ваш ответ!

  1. Сначала я бы попытался уменьшить сложность сценария, скажем так ...

    эхо "Hello World" и посмотрите, работает ли это.

  2. Более того, NRPE обычно запускается пользователем, который называется nrpe (если не указано иное), поэтому, когда вы запускаете свои проверки, запускайте их от пользователя nrpe, а не от root.
  3. Также убедитесь, что для параметра «dont_blame_nrpe» установлено значение «1» в nrpe.cfg на отслеживаемой машине.
  4. Еще вы можете попробовать обернуть это:

cmd / c echo c: \ install \ veeam_check.ps1; выход ($ lastexitcode) | powershell.exe -ExecutionPolicy Bypass -noninteractive -noprofile -File -

в пакетном файле (.bat), а затем измените команду в NRPE на что-то более простое, например:

command[check_veeam_dailyone]=yourscript.bat

Затем попробуйте запустить команду еще раз и посмотрите, работает ли она.