- netdata, based on PLD spec, updated
[packages/netdata.git] / netdata.init
1 #!/bin/sh
2 #
3 # netdata       Real-time charts for system monitoring
4 # chkconfig:    345 99 01
5 # description:  Netdata is a daemon that collects data in realtime (per second)
6 #               and presents a web site to view and analyze them. The presentation
7 #               is also real-time and full of interactive charts that precisely
8 #               render all collected values.
9 # processname:  netdata
10 #
11
12 # Source function library
13 . /etc/rc.d/init.d/functions
14
15 # Get network config
16 . /etc/sysconfig/network
17
18 # Check that networking is up.
19 if is_yes "${NETWORKING}"; then
20         if [ ! -f /var/lock/subsys/network -a "$1" != stop -a "$1" != status ]; then
21                 msg_network_down "Netdata Daemon"
22                 exit 1
23         fi
24 else
25         exit 0
26 fi
27
28 # Set defaults
29 PIDFILE=/var/run/netdata/netdata.pid
30
31 # Get service config - may override defaults
32 [ -f /etc/sysconfig/netdata ] && . /etc/sysconfig/netdata
33
34 start() {
35         # Check if the service is already running?
36         if [ -f /var/lock/subsys/netdata ]; then
37                 msg_already_running "Netdata Daemon"
38                 return
39         fi
40
41         msg_starting "Netdata Daemon"
42         daemon /usr/sbin/netdata
43         RETVAL=$?
44         [ $RETVAL -eq 0 ] && touch /var/lock/subsys/netdata
45 }
46
47 stop() {
48         if [ ! -f /var/lock/subsys/netdata ]; then
49                 msg_not_running "Netdata Daemon"
50                 return
51         fi
52
53         # Stop daemons.
54         msg_stopping "Netdata Daemon"
55         killproc --pidfile $PIDFILE netdata -TERM
56         rm -f /var/lock/subsys/netdata
57 }
58
59 condrestart() {
60         if [ ! -f /var/lock/subsys/netdata ]; then
61                 msg_not_running "Netdata Daemon"
62                 RETVAL=$1
63                 return
64         fi
65
66         stop
67         start
68 }
69
70 RETVAL=0
71 # See how we were called.
72 case "$1" in
73   start)
74         start
75         ;;
76   stop)
77         stop
78         ;;
79   restart)
80         stop
81         start
82         ;;
83   try-restart)
84         condrestart 0
85         ;;
86   force-reload)
87         condrestart 7
88         ;;
89   status)
90         status --pidfile $PIDFILE netdata
91         RETVAL=$?
92         ;;
93   *)
94         msg_usage "$0 {start|stop|restart|try-restart|force-reload|status}"
95         exit 3
96 esac
97
98 exit $RETVAL