#!/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 }