Apache-2.2

自定義 Nagios 腳本未觸發

  • June 15, 2013

最近,我們的伺服器收到大量垃圾郵件,導致伺服器apache崩潰。為了解決這個nagios問題,如果出現問題,我們安裝了通知我們/執行一些重啟命令。通知功能正常,但重啟腳本無法啟動。我們採取了以下步驟:

  • 創建了我們的重啟腳本,位於:/usr/share/nagios3/plugins/eventhandlers/restart_apache
  • 測試並執行通過./restart_apache CRITICAL SOFT 3- 可以確認腳本有效
  • 定義命令:/etc/nagios3/commands.cfg
定義命令{
command_name 重啟-apache
命令行 /usr/local/nagios/libexec/eventhandlers/restart_apache $SERVICESTATE$ $SERVICESTATETYPE$ $SERVICEATTEMPT$
}
  • 在目前負載通知執行時應用該命令觸發:/etc/nagios3/conf.d/localhost_nagios2.cfg
定義服務{
使用通用服務;要使用的服務模板的名稱
主機名本地主機
service_description 目前負載
check_command check_load!5.0!4.0!3.0!10.0!6.0!4.0
event_handler 重啟-apache
}
  • 我們已將腳本設置為在執行重新啟動時寫入文本文件,但沒有發生任何事情(並且 apache 保持關閉) - 所以有些事情是不對的。非常感謝任何方向!謝謝

您應該確保已啟用處理程序並登錄您的 nagios.cfg

enable_event_handlers=1
log_event_handlers=1

然後嘗試跟踪您的 nagios 日誌(在我的情況下/var/spool/nagios/nagios.log)並等待您的事件,您應該看到處理程序正在執行或失敗

tail -f /var/spool/nagios/nagios.log | egrep HANDLER
...
[1271946604] SERVICE EVENT HANDLER: $HOST:$SERVICE:CRITICAL:HARD:3:$YOUR_RESTART_HANDLER

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