====== Monitor SNMPD for all cacti host ====== This script will test SNMPD against all host in cacti database. #!/bin/bash # Powered by k2patel :) # please send suggestion to k2patel@hotmail.com ################################################# ### ### ### MySQL Information used on Cacti ### ################################################# sqlu= sqlp= sqld= ################################################# ### ### ### List of person / group notified on faliur ### ################################################# export receipients="test@k2.com test@notify.com" ##################################################### ### ### ### Folloving variable defines the skipped Host ### ##################################################### hstskip=(test.dummy.com test.dummy.net) ################################################### ### ### ### Variables Used in System ### ################################################### timeout=5 isskip=0 export prefix=/usr/lib64/nagios export PATH=$PATH:/usr/lib64/nagios/plugins:/usr/local/bin:/bin #$$$$$$$$$$$$$$$ END Of Customization $$$$$$$$$$$$$$$$$$$$ notify(){ for n in $receipients; do echo $1 | /bin/mail -s "[SNMPD] on $i Failed" $n done } for i in `mysql -N -u $sqlu -p$sqlp -e "select hostname from $sqld.host"`; do for k in ${hstskip[@]}; do if [ $i == $k ]; then isskip=1 fi done if [ $isskip -eq 1 ]; then echo "Skipped $i" isskip=0 else echo Running check_snmp -C public -H $i -P 2c -o system -t $timeout check_snmp -C public -H $i -P 2c -o system -t $timeout status=$? echo if [ $status -ne 0 ]; then notify "SNMPD failure, Please login to box and try to start SNMPD " else echo "Status OK" fi fi done