| #!/sbin/openrc-run |
| # Copyright 1999-2015 Gentoo Foundation |
| # Distributed under the terms of the GNU General Public License v2 |
| |
| LS_USER="${LS_USER:-root}" |
| LS_GROUP="${LS_GROUP:-root}" |
| LS_CONFDIR="${LS_CONFDIR:-/etc/logstash/conf.d}" |
| LS_LOGFILE="${LS_LOGFILE:-/var/log/logstash/logstash.log}" |
| LS_PIDFILE="${LS_PIDFILE:-/run/logstash/logstash.pid}" |
| LS_HEAP_SIZE="${LS_HEAP_SIZE:-500m}" |
| |
| command="/opt/logstash/bin/logstash" |
| command_args="agent --config ${LS_CONFDIR}/*.conf --log ${LS_LOGFILE} ${LS_OPTS}" |
| extra_commands="checkconfig" |
| command_background="true" |
| start_stop_daemon_args="--user=${LS_USER}:${LS_GROUP} \ |
| --env LS_HEAP_SIZE=${LS_HEAP_SIZE}" |
| pidfile="${LS_PIDFILE}" |
| |
| depend() { |
| use net |
| after elasticsearch |
| } |
| |
| checkconfig() { |
| ebegin "Checking your configuration" |
| ${command} ${command_args} --configtest |
| eend $? "Configuration error. Please fix your configuration files." |
| } |
| |
| start_pre() { |
| checkconfig || return 1 |
| |
| checkpath -d -o "${LS_USER}":"${LS_GROUP}" -m750 "$(dirname "${LS_PIDFILE}")" |
| checkpath -d -o "${LS_USER}":"${LS_GROUP}" -m750 "$(dirname "${LS_LOGFILE}")" |
| checkpath -f -o "${LS_USER}":"${LS_GROUP}" -m640 "${LS_LOGFILE}" |
| } |
| |
| stop() { |
| ebegin "Stopping logstash" |
| start-stop-daemon --stop \ |
| --pidfile="${LS_PIDFILE}" \ |
| --retry=TERM/5/KILL/5 |
| } |