Linux

Nagios 外掛在負載高時拍攝程序快照

  • July 23, 2015

我們已經配置Nagioscheck_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:我沒有測試過這個配置。

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