From c09374f0c5da8086504e34609881c0a75715e404 Mon Sep 17 00:00:00 2001 From: Stefano Zacchiroli Date: Tue, 8 Apr 2003 08:12:17 +0000 Subject: [PATCH] added UWOBO respawner script --- helm/scripts/init.d/uwobo_forever.sh | 55 ++++++++++++++++++++++++++++ 1 file changed, 55 insertions(+) create mode 100755 helm/scripts/init.d/uwobo_forever.sh diff --git a/helm/scripts/init.d/uwobo_forever.sh b/helm/scripts/init.d/uwobo_forever.sh new file mode 100755 index 000000000..5c5a57bb1 --- /dev/null +++ b/helm/scripts/init.d/uwobo_forever.sh @@ -0,0 +1,55 @@ +#!/bin/sh +# +# respawner for UWOBO (http://helm.cs.unibo.it/software/uwobo) +# +# by --Zack +# +# Created: Mon, 7 Apr 2003 18:59:56 +0200 zacchiro +# Last-Modified: Tue, 8 Apr 2003 10:06:41 +0200 zacchiro +# + +# Warning: $PIDFILE value is shared by UWOBO /etc/init.d script, change at your +# own risk +PIDFILE="/projects/helm/run/uwobo_mowgli.pid" + +MAILTO="root@mowgli.cs.unibo.it" +INTERVAL="60" + +# Usage: alert +alert () +{ + echo "$2" | mail -s "$1" $MAILTO +} + +# check if uwobo is still alive +uwobo_is_alive () +{ + if [ -r "$PIDFILE" ]; then + ps `cat $PIDFILE` &> /dev/null + else # no pid file found, uwobo has been shutdown nicely + exit 0 + fi +} + +# start uwobo +start_uwobo () +{ + /etc/init.d/helm-uwobo_mowgli start & +} + +# first check +if ! uwobo_is_alive; then + alert "UWOBO failed to start :-((" "UWOBO died during initialization :-((, enjoy debugging! :-P. Cheers." + exit 0 +fi + +# continuous checks +while true; do + sleep $INTERVAL + if ! uwobo_is_alive; then + alert "UWOBO died :-(, restarting it ..." "UWOBO died miserably :-(. I'm going to try restarting it, you will receive an additional mail in case of failure. Cheers." + start_uwobo # performed in background + exit 0 + fi +done + -- 2.39.2