]> arthur.barton.de Git - netdata.git/blob - system/netdata-init-d.in
Merge pull request #2022 from l2isbad/dns_query_time_fixes
[netdata.git] / system / netdata-init-d.in
1 #!/bin/sh
2 #
3 # netdata       Real-time performance monitoring, done right
4 # chkconfig: 345 99 01
5 # description:  Netdata is a daemon that collects data in real-time (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 # Source functions
12 . /etc/rc.d/init.d/functions
13
14 DAEMON="netdata"
15 DAEMON_PATH=@sbindir_POST@
16 PIDFILE=@localstatedir_POST@/run/$DAEMON.pid
17 DAEMONOPTS="-P $PIDFILE"
18 STOP_TIMEOUT="10"
19
20 [ -e /etc/sysconfig/$DAEMON ] && . /etc/sysconfig/$DAEMON
21
22 LOCKFILE=/var/lock/subsys/$DAEMON
23
24 service_start()
25 {
26         [ -x $DAEMON_PATH ] || exit 5
27         echo -n "Starting $DAEMON..."
28         daemon $DAEMON_PATH/$DAEMON $DAEMONOPTS
29         RETVAL=$?
30         echo
31         [ $RETVAL -eq 0 ] && touch $LOCKFILE
32         return $RETVAL
33 }
34
35 service_stop()
36 {
37         printf "%-50s" "Stopping $DAEMON..."
38         killproc -p ${PIDFILE} -d ${STOP_TIMEOUT} $DAEMON
39         RETVAL=$?
40         echo
41         [ $RETVAL -eq 0 ] && rm -f ${PIDFILE} ${LOCKFILE}
42         return $RETVAL
43 }
44
45 condrestart()
46 {
47         if ! service_status > /dev/null; then
48                 RETVAL=$1
49                 return $RETVAL
50         fi
51
52         service_stop
53         service_start
54 }
55
56 service_status()
57 {
58         status -p ${PIDFILE} $DAEMON_PATH/$DAEMON
59 }
60
61 service_status_quiet()
62 {
63         status -p ${PIDFILE} $DAEMON_PATH/$DAEMON >/dev/null 2>&1
64 }
65
66 case "$1" in
67 start)
68         service_status_quiet && exit 0
69         service_start
70 ;;
71 stop)
72         service_status_quiet || exit 0
73         service_stop
74 ;;
75 restart)
76         service_stop
77         service_start
78 ;;
79 try-restart)
80         condrestart 0
81         ;;
82 force-reload)
83         condrestart 7
84 ;;
85 status)
86         service_status
87 ;;
88 *)
89         echo "Usage: $0 {start|stop|restart|try-restart|force-reload|status}"
90         exit 3
91 esac