# cat /var/flash/debug.cfg
#! /bin/sh
HOST_TO_PING=www.google.com
CHECK_INTERVAL=180
STARTUP_DELAY=600
OUTFILE=/var/tmp/WATCH_DOG.log
callWatchDog() {
echo Hello from the watch dog PID:$$: $STARTUP_DELAY, $CHECK_INTERVAL, $HOST_TO_PING > $OUTFILE
sleep $STARTUP_DELAY
ITERATION=0
while [ 1 ]; do
echo Watch dog is awake after $((ITERATION * CHECK_INTERVAL + STARTUP_DELAY)) seconds >> $OUTFILE
if ! ping -c 1 $HOST_TO_PING >/dev/null 2>&1; then
echo Watch dog miss the $HOST_TO_PING and causes reboot >> $OUTFILE
reboot
exit
fi
echo Watch dog has found the $HOST_TO_PING and goes to sleep for $CHECK_INTERVAL seconds >> $OUTFILE
sleep $CHECK_INTERVAL
ITERATION=$((ITERATION + 1))
done
}
callWatchDog &