netdata-openrc.in 1.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. #!/sbin/openrc-run
  2. # SPDX-License-Identifier: GPL-3.0-or-later
  3. # The user netdata is configured to run as.
  4. # If you edit its configuration file to set a different
  5. # user, set it here too, to have its files switch ownership
  6. : "${NETDATA_OWNER:=netdata:netdata}"
  7. # The timeout in seconds to wait for netdata
  8. # to save its database on disk and exit.
  9. : "${NETDATA_WAIT_EXIT_TIMEOUT:=60}"
  10. # When set to 1, if netdata does not exit in
  11. # NETDATA_WAIT_EXIT_TIMEOUT, we will force it
  12. # to exit.
  13. : "${NETDATA_FORCE_EXIT:=0}"
  14. # Netdata will use these services, only if they
  15. # are enabled to start.
  16. : "${NETDATA_START_AFTER_SERVICES:=apache2 squid nginx mysql named opensips upsd hostapd postfix lm_sensors}"
  17. extra_started_commands="reload rotate save"
  18. pidfile="@localstatedir_POST@/run/netdata/netdata.pid"
  19. command="@sbindir_POST@/netdata"
  20. command_args="-P ${pidfile} ${NETDATA_EXTRA_ARGS}"
  21. start_stop_daemon_args="-u ${NETDATA_OWNER}"
  22. required_files="/etc/netdata/netdata.conf"
  23. if [ "${NETDATA_FORCE_EXIT}" -eq 1 ]; then
  24. retry="TERM/${NETDATA_WAIT_EXIT_TIMEOUT}/KILL/1"
  25. else
  26. retry="TERM/${NETDATA_WAIT_EXIT_TIMEOUT}"
  27. fi
  28. depend() {
  29. use logger
  30. need net
  31. after ${NETDATA_START_AFTER_SERVICES}
  32. }
  33. start_pre() {
  34. checkpath -o ${NETDATA_OWNER} -d @localstatedir_POST@/cache/netdata @localstatedir_POST@/run/netdata
  35. }
  36. reload() {
  37. ebegin "Reloading Netdata"
  38. start-stop-daemon --signal SIGUSR2 --pidfile "${pidfile}"
  39. eend $? "Failed to reload Netdata"
  40. }
  41. rotate() {
  42. ebegin "Logrotating Netdata"
  43. start-stop-daemon --signal SIGHUP --pidfile "${pidfile}"
  44. eend $? "Failed to logrotate Netdata"
  45. }
  46. save() {
  47. ebegin "Saving Netdata database"
  48. start-stop-daemon --signal SIGUSR1 --pidfile "${pidfile}"
  49. eend $? "Failed to save Netdata database"
  50. }