Linux
Nagios 外掛在負載高時拍攝程序快照
我們已經配置
Nagios
了check_load
通過NRPE
外掛來監控伺服器負載,它會在負載高時報告,但當時沒有選擇快照頂部程序(如top
命令)。有什麼
nagios
NRPE
外掛可以解決這個問題嗎?
您可以使用事件處理程序來做到這一點。
首先,為您的平均負載定義添加一個事件處理程序:
define service{ use generic-service host_name xx service_description Load_Average check_command check_nrpe!check_load event_handler processes_snapshot!xx contact_groups admin-sms }
該
processes_snapshot
命令定義在commands.cfg
:define command{ command_name processes_snapshot command_line $USER1$/eventhandlers/processes_snapshot.sh $SERVICESTATE$ $SERVICESTATETYPE$ $SERVICEATTEMPT$ $HOSTADDRESS$ }
其次,編寫一個事件處理程序腳本 (
processes_snapshot.sh
):#!/bin/bash case "$1" in OK) ;; WARNING) /usr/local/nagios/libexec/check_nrpe -H $4 -c processes_snapshot ;; UNKNOWN) ;; CRITICAL) /usr/local/nagios/libexec/check_nrpe -H $4 -c processes_snapshot ;; esac exit 0
該命令在主機上
processes_snapshot
定義如下:nrpe.cfg``xx
command[processes_snapshot]=top -cSbn 1 | tail -n +8 | sort -rn -k11 | head > /tmp/proc_snap.txt
PS:我沒有測試過這個配置。