small-package/luci-app-netdata/root/usr/share/netdata/webcn/netdata.init

47 lines
1.0 KiB
Bash
Executable File

#!/bin/sh /etc/rc.common
START=99
USE_PROCD=1
APPBINARY=/usr/sbin/netdata
CONFIGFILE=/etc/netdata/netdata.conf
get_config() {
config_get_bool enabled $1 enabled 1
config_get_bool logger $1 logger 1
config_get port $1 port 19999
}
netdata_prepare() {
pgrep -f /usr/sbin/netdata | xargs kill -9 >/dev/null 2>&1
logger -t netdata -p warn "netdata is stop."
}
stop_service() {
netdata_prepare
}
start_service() {
netdata_prepare
config_load netdata
config_foreach get_config netdata
[ x$enabled == x1 ] || return 1
mkdir -m 0755 -p /var/cache/netdata
logger -t netdata -p warn "netdata is start."
chown nobody /var/cache/netdata
mkdir -m 0755 -p /var/lib/netdata
chown nobody /var/lib/netdata
mkdir -m 0755 -p /var/log/netdata
chown nobody /var/log/netdata
procd_open_instance
procd_set_param command $APPBINARY -D -c $CONFIGFILE -p $port:$port
[ "x$logger" == x1 ] && procd_set_param stderr 1
procd_set_param file $CONFIGFILE
procd_set_param respawn
procd_close_instance
}
service_triggers() {
procd_add_reload_trigger "netdata"
}