Как я могу вручную запустить проверку nagios из командной строки?

При определении и тестировании новых сервисов в nagios я перезапускаю nagios, затем нажимаю на службу и перенаправляю чек как можно скорее, а затем жду, пока не произойдет проверка.

Есть ли более эффективный способ сделать это? Я хотел бы использовать командную строку для выполнения этой конкретной проверки и получения вывода.

21 голос | спросил cwd 12 MonEurope/Moscow2011-12-12T03:14:16+04:00Europe/Moscow12bEurope/MoscowMon, 12 Dec 2011 03:14:16 +0400 2011, 03:14:16

5 ответов


28

Иногда мне сложно понять, что делает плагин. Чтобы понять это, я установил nagios в режим отладки с такой конфигурацией. debug_level=2048 С nagios в режиме отладки я просто заканчиваю debug_log file debug_file=/var/log/nagios3/nagios.debug. Выполните проверку, и вы точно увидите, как выполняется команда. Я бы не оставил эту настройку нормально, хотя, она очень многословна и быстро заполняет ваш файл журнала.

ответил Zoredache 12 MonEurope/Moscow2011-12-12T04:01:04+04:00Europe/Moscow12bEurope/MoscowMon, 12 Dec 2011 04:01:04 +0400 2011, 04:01:04
15

Это довольно просто. Просто cd (или нет) в каталог плагинов (это расположение каталога зависит от того, как вы его установили, но проверьте /usr /local /nagios или /usr /lib /nagios).

Найдите плагин, который вы хотите запустить (если вы не уверены, сравните то, что вы видите в своем каталоге плагинов на вашем ящике Linux, с плагинами, расположенными здесь: http://exchange.nagios.org/directory/Plugins или попробуйте запустить« ./plugin-name -h », чтобы получить информацию о плагине) .

Метод использования любого из этих «плагинов» из командной строки такой же, как и любой другой сценарий Linux: просто запустите «./plugin-name» с соответствующими флагами, которые вы хотите проверить, и voila!

ответил David W 12 MonEurope/Moscow2011-12-12T03:26:49+04:00Europe/Moscow12bEurope/MoscowMon, 12 Dec 2011 03:26:49 +0400 2011, 03:26:49
4

Я делаю несколько более грубую силу, чем @Zoredache, я вхожу на сервер nagios и делаю «while true, do ps awwlx | grep NAGIOS_CHECK_NAME; done», а я заставляю повторную проверку службы, где NAGIOS_CHECK_NAME - либо часть имени проверки, либо IP-адрес сервера, который я ищу. Обычно в течение нескольких секунд появляется полная команда проверки, а затем я убиваю цикл while и запускаю команду проверки.

Да, это полная грубая сила, но <shrug> он работает для меня.

ответил Sean Reifschneider 12 MonEurope/Moscow2011-12-12T06:24:38+04:00Europe/Moscow12bEurope/MoscowMon, 12 Dec 2011 06:24:38 +0400 2011, 06:24:38
3

Вы также можете попробовать попробовать плагин 'capture'. Он по сути делает то же самое, что и уровень отладки 2048, но может использоваться для каждого плагина. Это дает меньше выходного сигнала.

http://www.waggy.at/nagios/capture_plugin.htm

ответил Keith 29 ThuEurope/Moscow2011-12-29T02:30:35+04:00Europe/Moscow12bEurope/MoscowThu, 29 Dec 2011 02:30:35 +0400 2011, 02:30:35
2

Перейдите в свой каталог плагинов - в моем примере это

/usr/lib64/nagios/plugins/

Введите имя плагина - в моем примере это

check_tcp

теперь выполните полную команду - (имя плагина) -H (имя хоста) -p (номер порта)

/usr/lib64/nagios/plugins/check_tcp -H myservername -p 8080

вывод

TCP OK - 0.004 second response time on port 8080|time=0.004146s;;;0.000000;10.000000

Однако в этом примере номер порта необязателен

другой пример -

в вашем файле конфигурации, который выглядит примерно так (myserver.cfg), и вы хотите запустить check_cpu из командной строки

define service{
  use                             generic-service
  host_name                       myserver
  servicegroups                   windows
  service_description             CPU
  contact_groups                  sysadmin_email_only
  notification_options            w,c,r
  check_command                   check_nrpe!check_cpu
}

для немедленной проверки (без зеленого или красного графического интерфейса)

Попробуйте это - (полный путь к плагину) - H (имя сервера) -c (checkname)

/usr/lib64/nagios/plugins/check_nrpe -H spc7atc01 -c check_cpu

вывод -

OK CPU Load ok.|'5'=4;80;90; '10'=3;80;90; '15'=3;80;90;

Это он

ответил Sharia Chowdhury 2 ndEurope/Moscowp30Europe/Moscow09bEurope/MoscowTue, 02 Sep 2014 12:41:27 +0400 2014, 12:41:27

Похожие вопросы

Популярные теги

security × 330linux × 316macos × 2827 × 268performance × 244command-line × 241sql-server × 235joomla-3.x × 222java × 189c++ × 186windows × 180cisco × 168bash × 158c# × 142gmail × 139arduino-uno × 139javascript × 134ssh × 133seo × 132mysql × 132