Nagios

外掛沒有返回輸出,但服務顯示正常

  • October 21, 2016

我正在嘗試使用check_memory.pl和以下命令設置來檢查系統記憶體:

在遠端主機上的 nrpe.cfg

   command[check_mem]=/usr/lib/nagios/plugins/check_mem -f -w 20 -c 10

Nagios 伺服器上的服務:

define service{
use                     generic-service
host_name               Hostname     ;winserver
service_description     Check Memory
check_command           check_nrpe!check_mem
}

當我像這樣在遠端主機上執行命令時

/usr/lib/nagios/plugins/check_mem  -f -w 20 -c 10

我得到:

OK - 73.6% (6013416 kB) free.|TOTAL=8175616KB;;;; USED=2162200KB;6540492;7358054;; FREE=6013416KB;;;; CACHES=2021812KB;;;;

當我跑

/usr/local/nagios/libexec/check_nrpe -H host-ip -c check_mem
or
/usr/local/nagios/libexec/check_nrpe -H host-ip -c check_mem -a -w 20 -c 10

或任何參數列表

我收到 :

  Wrong Syntax: custom_check_mem 
  Usage: custom_check_mem [-w|--warning]<percent free> [-c|--critical]<percent free>   

但網路顯示服務正常,並顯示如下消息:

(外掛沒有返回輸出)錯誤的語法:custom_check_mem

用法:custom_check_mem

$$ -w–warning $$ $$ -c|–critical $$ 我在其他伺服器上嘗試了這個外掛,它執行良好,但我沒有做這個設置中缺少的東西。

任何幫助表示讚賞。謝謝

聽起來那個外掛很垃圾。那里至少有十幾種不同的check_memory變體。

也許試試這個

您在 NRPE 中的命令定義似乎錯誤

command[check_mem]=/usr/lib/nagios/plugins/check_mem -f -w 20 -c 10

由於 check_mem 似乎沒有-f參數。

另一方面,check_mem 似乎在錯誤的參數上以 0 退出,這對於 Nagios 外掛來說不是一個好的行為……(應該以 3 退出 - 未知)

Nagios / Icinga 僅從命令的返回碼中獲取“狀態”,輸出只是使用者的資訊。

引用自:https://serverfault.com/questions/810075