ViewVC Help
View File | Revision Log | Show Annotations | Revision Graph | Root Listing
root/i-scream/projects/cms/source/host/ihost-perl/ihostchk.sh
Revision: 1.4
Committed: Wed Nov 21 10:08:20 2001 UTC (22 years, 11 months ago) by tdb
Content type: application/x-sh
Branch: MAIN
Changes since 1.3: +3 -2 lines
Log Message:
This change has been rolled back. It caused no end of problems for us
because our home directories are NFS mounted - so the PID file was the same
on a whole block of our hosts... which meant the PID checking really didn't
want to work :) Not to mention the problems introduced with the NFS going
funny at times ;) <sigh>

File Contents

# User Rev Content
1 tdb 1.1 #!/bin/sh
2     #
3     # Script to check that ihost is still running, and restart if necessary.
4     #
5     # You probably want to add this to a cronjob, say every 10 minutes:
6     # 0,10,20,30,40,50 * * * * /path/to/ihostchk.sh
7     # And if you find yourself getting e-mails, use the following instead:
8     # 0,10,20,30,40,50 * * * * /path/to/ihostchk.sh >/dev/null 2>&1
9     # NOTE: e-mails should only be sent if an error occurs, so the former is
10     # the best choice for a cronjob.
11     #
12 tdb 1.4 # $Id: ihostchk.sh,v 1.3 2001/11/20 13:05:08 tdb1 Exp $
13 tdb 1.1 #
14    
15     # CHANGE this to the directory of the ihost.pl script
16     ihostdir="/home/cut/tdb1/cvs/source/host/ihost"
17    
18     # CHANGE these to represent your filtermanager details
19     fmhost="raptor.ukc.ac.uk"
20     fmport="4567"
21    
22 tdb 1.2 # CHANGE this to point to the PID file
23 tdb 1.4 #piddir=${HOME:-/var/tmp}
24     piddir="/var/tmp"
25 tdb 1.3 pidfile="$piddir/.ihost.pid"
26 tdb 1.1
27     ###### You probably don't need to change anything below here ######
28    
29     ihost="ihost.pl"
30    
31     cd $ihostdir
32    
33     # is there a pid file?
34     if test -r $pidfile
35     then
36     # there is a pid file, check to see if it's current
37     ihostpid=`cat $pidfile`
38     if `kill -CHLD $ihostpid >/dev/null 2>&1`
39     then
40     # it's still alive, lets leave it be
41     exit 0
42     fi
43     # old pid file found
44     echo ""
45     echo "Stale $pidfile file, removing..."
46     rm -f $pidfile
47     fi
48    
49     # if we got here, we're clear to restart ihost
50     echo ""
51     echo "ihost is not running, starting up..."
52     echo ""
53     ./$ihost $fmhost $fmport &
54     exit 0
55    
56     # finished