diff options
author | V3n3RiX <venerix@redcorelinux.org> | 2018-07-14 21:03:06 +0100 |
---|---|---|
committer | V3n3RiX <venerix@redcorelinux.org> | 2018-07-14 21:03:06 +0100 |
commit | 8376ef56580626e9c0f796d5b85b53a0a1c7d5f5 (patch) | |
tree | 7681bbd4e8b05407772df40a4bf04cbbc8afc3fa /app-admin/logstash-bin/files/logstash.initd | |
parent | 30a9caf154332f12ca60756e1b75d2f0e3e1822d (diff) |
gentoo resync : 14.07.2018
Diffstat (limited to 'app-admin/logstash-bin/files/logstash.initd')
-rw-r--r-- | app-admin/logstash-bin/files/logstash.initd | 74 |
1 files changed, 74 insertions, 0 deletions
diff --git a/app-admin/logstash-bin/files/logstash.initd b/app-admin/logstash-bin/files/logstash.initd new file mode 100644 index 000000000000..2133421377d6 --- /dev/null +++ b/app-admin/logstash-bin/files/logstash.initd @@ -0,0 +1,74 @@ +#!/sbin/openrc-run +# Copyright 1999-2017 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +LS_USER=${LS_USER:-logstash} +LS_GROUP=${LS_GROUP:-$LS_USER} +LS_LOG_DIR=${LS_LOG_DIR:-/var/log/logstash} +LS_CONF_DIR=${LS_CONF_DIR:-/etc/logstash/conf.d} +LS_HOME=${LS_HOME:-/var/lib/logstash} +LS_DATA_DIR=${LS_DATA_DIR:-$LS_HOME/data} +LS_HEAP_SIZE=${LS_HEAP_SIZE:-500m} +LS_NICE=${LS_NICE:-19} +LS_JAVA_OPTS=${LS_JAVA_OPTS:-"-Djava.io.tmpdir=${LS_HOME}"} +LS_USE_GC_LOGGING=${LS_USE_GC_LOGGING:-false} +LS_OPEN_FILES=${LS_OPEN_FILES:-16384} +KILL_ON_STOP_TIMEOUT=${KILL_ON_STOP_TIMEOUT:-0} + +LS_INSTALL_DIR="/opt/logstash" + +command="${LS_INSTALL_DIR}/bin/logstash" +command_args="--path.config ${LS_CONF_DIR} --path.logs ${LS_LOG_DIR} --path.data ${LS_DATA_DIR} ${LS_OPTS}" +command_background="true" +pidfile="/run/${RC_SVCNAME}.pid" + +start_stop_daemon_args="--user ${LS_USER}:${LS_GROUP} \ + --chdir ${LS_HOME} + --nicelevel ${LS_NICE} + --env LS_HEAP_SIZE=${LS_HEAP_SIZE} + --env LS_JAVA_OPTS=${LS_JAVA_OPTS} + --env LS_USE_GC_LOGGING=${LS_USE_GC_LOGGING}" + +extra_commands="checkconfig" +extra_started_commands="reload" + +checkconfig() { + if [ ! -f ${LS_CONF_DIR}/* ]; then + eerror "Please put your configuration in ${LS_CONF_DIR}" + exit 1 + fi + + ebegin "Checking your configuration" + ${command} ${command_args} --path.logs "${LS_LOG_DIR}/configcheck" --config.test_and_exit + eend $? "Configuration error. Please fix your configuration files." +} + +reload() { + checkconfig || return 1 + ebegin "Reloading configuration" + start-stop-daemon --signal HUP --pidfile "${pidfile}" + eend $? +} + +start_pre() { + checkconfig || return 1 + + rc_ulimit="-n ${LS_OPEN_FILES}" + + local d + for d in "${LS_HOME}" "${LS_DATA_DIR}" "${LS_DATA_DIR}/queue" "${LS_DATA_DIR}/dead_letter_queue" "${LS_LOG_DIR}"; do + checkpath -d -o "${LS_USER}":"${LS_GROUP}" -m750 "$d" + done +} + +stop() { + ebegin "Stopping logstash" + if [ "${KILL_ON_STOP_TIMEOUT}" = "1" ]; then + start-stop-daemon --stop \ + --pidfile=${pidfile} \ + --retry=TERM/5/KILL/5 + else + start-stop-daemon --stop \ + --pidfile=${pidfile} + fi +} |