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 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88
|
#!/sbin/openrc-run
# SPDX-License-Identifier: GPL-3.0-or-later
# The user netdata is configured to run as.
# If you edit its configuration file to set a different
# user, set it here too, to have its files switch ownership
: "${NETDATA_OWNER:=@netdata_user_POST@:@netdata_user_POST@}"
# The timeout in seconds to wait for netdata
# to save its database on disk and exit.
: "${NETDATA_WAIT_EXIT_TIMEOUT:=60}"
# When set to 1, if netdata does not exit in
# NETDATA_WAIT_EXIT_TIMEOUT, we will force it
# to exit.
: "${NETDATA_FORCE_EXIT:=0}"
# When set to 1, we use netdatacli for reload/rotate/save commands instead of s-s-d.
: "${NETDATA_USE_NETDATACLI:=0}"
# Specifies the pidfile to use when running in the background.
: "${NETDATA_PIDFILE:=@localstatedir_POST@/run/netdata/netdata.pid}"
extra_started_commands="reload rotate save"
command_prefix="@sbindir_POST@"
command="${command_prefix}/netdata"
command_args="-P ${NETDATA_PIDFILE} ${NETDATA_EXTRA_ARGS}"
command_args_foreground="-D"
start_stop_daemon_args="-u ${NETDATA_OWNER}"
if [ "${NETDATA_FORCE_EXIT}" -eq 1 ]; then
retry="TERM/${NETDATA_WAIT_EXIT_TIMEOUT}/KILL/1"
else
retry="TERM/${NETDATA_WAIT_EXIT_TIMEOUT}"
fi
depend() {
use logger
need net
after apache2 squid nginx mysql named opensips upsd hostapd postfix lm_sensors
}
start_pre() {
checkpath -o ${NETDATA_OWNER} -d @localstatedir_POST@/cache/netdata @localstatedir_POST@/run/netdata
if [ -z "${supervisor}" ]; then
pidfile="${NETDATA_PIDFILE}"
fi
}
run_cmd() {
cmd="${1}"
msg="${2}"
failmsg="${3}"
signal="${4}"
ebegin "${msg}"
if [ "${NETDATA_USE_NETDATACLI}" = 1 ]; then
"${command_prefix}/netdatacli" "${cmd}" >/dev/null
eend $? "${failmsg}"
elif [ "${supervisor}" = "supervise-daemon" ]; then
supervise-daemon "${RC_SVCNAME}" --signal "${signal}"
eend $? "${failmsg}"
else
start-stop-daemon --signal "${signal}" --pidfile "${pidfile}"
eend $? "${failmsg}"
fi
}
reload() {
run_cmd reload-health \
"Reloading Netdata health configuration" \
"Failed to reload Netdata health configuration" \
SIGUSR2
}
rotate() {
run_cmd reopen-logs \
"Reopening Netdata log files" \
"Failed to reopen Netdata log files" \
SIGHUP
}
save() {
run_cmd save-database \
"Saving Netdata database" \
"Failed to save Netdata database" \
SIGUSR1
}
|