Nagios 監控 HTTPS 和 監控失敗訊息『Return code of 127 is out of bounds – plugin may be missing』

2015-07-10 Nagios

今天在用 Nagios 監控一個 HTTP Url 的時候屢屢發生監控失敗的訊息『Return code of 127 is out of bounds – plugin may be missing』但實際檢查 Url 是正常的!

 

就字面上來看,說是缺少 Plugin,但我用的是一般 check_http,其他 HTTP Url 都沒有這個問題呀!所以初步排除缺少 Plugin 的問題

 

 

監控 Url:https://taiwan.com/download.php?client=android&channel=shazi

在發生問題之前我的設定檔如下

define service {
        use                     generic-service
        host_name               taiwan.com
        service_description     taiwan for Android
        check_command           check_http! --ssl=3 -u /download.php?client=android&channel=shazi -c 30!
        contact_groups          system
}

 

 

看起來問題不大,但嘗試用 check_http 測試後才發現問題藏在細節裡!

 

如果你手動執行 check_http

$ ./check_http --ssl=3 -H taiwan.com -u /download.php?client=android&channel=shazi

 

你將會發現這段監控被拆成兩段

http://taiwan.com/download.php?client=android

channel=shazi

 

 

看出關鍵就是在 & 身上出包的!

正確使用方式必須用雙引號 “” 包起來

define service {
        use                     generic-service
        host_name               taiwan.com
        service_description     taiwan for Android
        check_command           check_http! --ssl=3 -u "/download.php?client=android&channel=shazi" -c 30!
        contact_groups          system
}

 

這算是很基本的帶參數常識,但如果你直接在 Nagios 設定,看到這樣的錯誤訊息一定抓不到頭緒!

 

 

 

另外補充在上面我有帶到 –ssl=3 代表我要使用 https 並且為 sslv3 的協定,若是你要監控證書到期日,也可以用 -C 來監控剩餘天數!

給 Mr. 沙先生一點建議

彙整

分類

展開全部 | 收合全部

License

訂閱 Mr. 沙先生 的文章

輸入你的 email 用於訂閱