midrange.com code scratchpad
Name:
ping monitoring script
Scriptlanguage:
Plain Text
Tabwidth:
4
Date:
05/02/2012 04:53:36 pm
IP:
Logged
Description:
The user was to lazy to give a description
Code:
  1. #!/bin/sh
  2.  
  3. HOSTS="host1.example.com host2.example.com"
  4. EMAIL="joe@example.org"
  5.  
  6. COUNT=4
  7.  
  8. for host in $HOSTS
  9. do
  10.   echo "$(date) : Testing $host" >> monitor.log
  11.   pingresult=$(ping -c $COUNT $host)
  12.  
  13.   count=$(echo $pingresult | grep 'received' | awk -F',' '{ print $2 }' | awk '{ print $1 }')
  14.   if [ $count -eq 0 ]; then
  15.     # 100% failed 
  16.     echo "$(date) : $host is down" >> monitor.log
  17.     echo $pingresult | mail -s "Host : $host is down (ping failed) at $(date)" $EMAIL
  18.  
  19.   fi
  20. done
© 2004-2019 by midrange.com generated in 0.006s valid xhtml & css