]>
Commit | Line | Data |
---|---|---|
dfab42e0 AM |
1 | #!/bin/sh |
2 | # | |
3 | # monit Monitoring daemon | |
4 | # | |
ac219be1 | 5 | # chkconfig: 345 99 01 |
dfab42e0 AM |
6 | # description: Monitoring daemon |
7 | # | |
8 | ||
9 | # Source function library | |
10 | . /etc/rc.d/init.d/functions | |
11 | ||
12 | # Get service config | |
13 | [ -f /etc/sysconfig/monit ] && . /etc/sysconfig/monit | |
14 | ||
a466ee9c ER |
15 | checkconfig() { |
16 | local out | |
17 | out=$(monit -c /etc/monitrc -t 2>&1) | |
18 | ret=$? | |
19 | if [ $ret != 0 ]; then | |
20 | echo >&2 "$out" | |
21 | exit 1 | |
22 | fi | |
23 | } | |
24 | ||
271cb128 | 25 | start() { |
dfab42e0 | 26 | # Check if the service is already running? |
d7723a0c | 27 | if [ ! -f /var/lock/subsys/monit ]; then |
a466ee9c | 28 | checkconfig |
dfab42e0 | 29 | msg_starting monit |
fba734ed | 30 | daemon monit -c /etc/monitrc -l syslog -d 60 -s /var/run/monit.state |
d7723a0c | 31 | RETVAL=$? |
32 | [ $RETVAL -eq 0 ] && touch /var/lock/subsys/monit | |
dfab42e0 | 33 | else |
d7723a0c | 34 | msg_already_running monit |
dfab42e0 | 35 | fi |
271cb128 ER |
36 | } |
37 | ||
38 | stop() { | |
d7723a0c | 39 | # Stop daemons. |
dfab42e0 | 40 | if [ -f /var/lock/subsys/monit ]; then |
d7723a0c | 41 | msg_stopping monit |
f5c6b5eb | 42 | daemon --waitforname monit --waitfortime 10 monit -c /etc/monitrc quit |
d7723a0c | 43 | rm -f /var/lock/subsys/monit > /dev/null 2>&1 |
44 | else | |
dfab42e0 | 45 | msg_not_running monit |
dfab42e0 | 46 | fi |
271cb128 ER |
47 | } |
48 | ||
49 | RETVAL=0 | |
50 | # See how we were called. | |
51 | case "$1" in | |
52 | start) | |
53 | start | |
dfab42e0 | 54 | ;; |
271cb128 ER |
55 | stop) |
56 | stop | |
dfab42e0 AM |
57 | ;; |
58 | restart) | |
a466ee9c | 59 | checkconfig |
271cb128 ER |
60 | stop |
61 | start | |
dfab42e0 | 62 | ;; |
d9f04f70 | 63 | reload|force-reload) |
64 | if [ -f /var/lock/subsys/monit ]; then | |
a466ee9c | 65 | checkconfig |
d9f04f70 | 66 | msg_reloading monit |
f41e3ea5 | 67 | daemon monit -c /etc/monitrc reload |
d9f04f70 | 68 | RETVAL=$? |
69 | else | |
3aba32a3 | 70 | msg_not_running monit |
d9f04f70 | 71 | exit 7 |
72 | fi | |
dfab42e0 | 73 | ;; |
a466ee9c ER |
74 | checkconfig) |
75 | checkconfig | |
76 | echo "Config check OK" | |
77 | ;; | |
271cb128 ER |
78 | status) |
79 | status monit | |
80 | monit -c /etc/monitrc status | |
81 | exit $? | |
82 | ;; | |
dfab42e0 | 83 | *) |
a466ee9c | 84 | msg_usage "$0 {start|stop|restart|reload|force-reload|checkconfig|status}" |
d9f04f70 | 85 | exit 3 |
dfab42e0 AM |
86 | esac |
87 | ||
88 | exit $RETVAL |