netdata.in 2.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980
  1. #!/sbin/openrc-run
  2. # SPDX-License-Identifier: GPL-3.0-or-later
  3. NETDATA_OWNER="@netdata_user_POST@:@netdata_user_POST@"
  4. NETDATA_PIDFILE="@localstatedir_POST@/run/netdata/netdata.pid"
  5. description="Run the Netdata system monitoring agent."
  6. extra_started_commands="reload rotate save"
  7. description_reload="Reload health configuration."
  8. description_rotate="Reopen log files."
  9. description_save="Force sync of database to disk."
  10. command_prefix="@sbindir_POST@"
  11. command="${command_prefix}/netdata"
  12. command_args="-P ${NETDATA_PIDFILE} ${NETDATA_EXTRA_ARGS}"
  13. command_args_foreground="-D"
  14. start_stop_daemon_args="-u ${NETDATA_OWNER}"
  15. depend() {
  16. use logger
  17. need net
  18. after apache2 squid nginx mysql named opensips upsd hostapd postfix lm_sensors
  19. }
  20. start_pre() {
  21. checkpath -o ${NETDATA_OWNER} -d @localstatedir_POST@/cache/netdata @localstatedir_POST@/run/netdata
  22. if [ -z "${supervisor}" ]; then
  23. pidfile="${NETDATA_PIDFILE}"
  24. fi
  25. }
  26. stop_pre() {
  27. if [ "0${NETDATA_FORCE_EXIT}" -eq 1 ]; then
  28. retry="TERM/${NETDATA_WAIT_EXIT_TIMEOUT:-60}/KILL/1"
  29. else
  30. retry="TERM/${NETDATA_WAIT_EXIT_TIMEOUT:-60}"
  31. fi
  32. }
  33. run_cmd() {
  34. cmd="${1}"
  35. msg="${2}"
  36. failmsg="${3}"
  37. signal="${4}"
  38. ebegin "${msg}"
  39. if [ "${NETDATA_USE_NETDATACLI}" = 1 ]; then
  40. "${command_prefix}/netdatacli" "${cmd}" >/dev/null
  41. eend $? "${failmsg}"
  42. elif [ "${supervisor}" = "supervise-daemon" ]; then
  43. supervise-daemon "${RC_SVCNAME}" --signal "${signal}"
  44. eend $? "${failmsg}"
  45. else
  46. start-stop-daemon --signal "${signal}" --pidfile "${pidfile}"
  47. eend $? "${failmsg}"
  48. fi
  49. }
  50. reload() {
  51. run_cmd reload-health \
  52. "Reloading Netdata health configuration" \
  53. "Failed to reload Netdata health configuration" \
  54. SIGUSR2
  55. }
  56. rotate() {
  57. run_cmd reopen-logs \
  58. "Reopening Netdata log files" \
  59. "Failed to reopen Netdata log files" \
  60. SIGHUP
  61. }
  62. save() {
  63. run_cmd save-database \
  64. "Saving Netdata database" \
  65. "Failed to save Netdata database" \
  66. SIGUSR1
  67. }