summaryrefslogtreecommitdiffstats
path: root/abs/extra/monitorix/monitorix.rc.d
blob: 9649519487db0da8f3dda49d2ee0908313fec7d8 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
#!/bin/bash
#
# @(#) Fibranet NSP, SL
# Copyright (C) 2005-2009 by Jordi Sanfeliu <jordi@fibranet.cat>
#
. /etc/rc.conf
. /etc/rc.d/functions

case $1 in
    start)
        stat_busy "Starting Monitorix"
        if ck_daemon monitorix; then
	if [ -x /etc/cron.hourly/sync-monitorix.sh ]; then
                /etc/cron.hourly/sync-monitorix.sh >/dev/null 2>&1
        fi
            # Creates RRDs files if needed
            /usr/sbin/monitorix.pl create >/dev/null 2>&1 || stat_die $?
            /usr/sbin/monitorix.pl init >/dev/null 2>&1 || stat_die $?
            add_daemon monitorix
        # restart crond so data gets collected
        /sbin/sv restart cron
            stat_done
        else
            stat_fail
        fi
    ;;

    stop)
        stat_busy "Stopping Monitorix"
        if ! ck_daemon monitorix; then
        if [ -x /etc/cron.hourly/sync-monitorix.sh ]; then
                /etc/cron.hourly/sync-monitorix.sh >/dev/null 2>&1
        fi
            /usr/sbin/monitorix.pl stop 2>&1 || stat_die $?
            rm_daemon monitorix
        # restart crond data stops getting collected
        /sbin/sv restart cron
            stat_done
        else
            stat_fail
        fi
    ;;

    restart)
        $0 stop
        sleep 1
        $0 start
    ;;
    *)
        echo "usage: $0 {start|stop|restart}"
    ;;
esac

exit 0