Eu instalei o logstash do repositório oficial do elasticsearch no Ubuntu 14.10. O processo de instalação adicionou o trabalho inicial /etc/init/logstash.conf
e o script de inicialização /etc/init.d/logstash
# logstash - agent instance
#
description "logstash agent"
start on virtual-filesystems
stop on runlevel [06]
# Respawn it if the process exits
respawn
# We're setting high here, we'll re-limit below.
limit nofile 65550 65550
setuid logstash
setgid logstash
# You need to chdir somewhere writable because logstash needs to unpack a few
# temporary files on startup.
console log
script
# Defaults
PATH=/bin:/usr/bin
LS_HOME=/var/lib/logstash
LS_HEAP_SIZE="500m"
LS_JAVA_OPTS="-Djava.io.tmpdir=${LS_HOME}"
LS_LOG_FILE=/var/log/logstash/logstash.log
LS_USE_GC_LOGGING=""
LS_CONF_DIR=/etc/logstash/conf.d
LS_OPEN_FILES=16384
LS_NICE=19
LS_OPTS=""
# Override our defaults with user defaults:
[ -f /etc/default/logstash ] && . /etc/default/logstash
HOME="${HOME:-$LS_HOME}"
JAVA_OPTS="${LS_JAVA_OPTS}"
# Reset filehandle limit
ulimit -n ${LS_OPEN_FILES}
cd "${LS_HOME}"
# Export variables
export PATH HOME JAVA_OPTS LS_HEAP_SIZE LS_JAVA_OPTS LS_USE_GC_LOGGING
test -n "${JAVACMD}" && export JAVACMD
exec nice -n ${LS_NICE} /opt/logstash/bin/logstash agent -f "${LS_CONF_DIR}" -l "${LS_LOG_FILE}" ${LS_OPTS}
end script
Mas o agente logstash não inicia automaticamente na reinicialização do sistema. Mas se eu correr
initctl emit virtual-filesystems
o agente é iniciado imediatamente. /var/log/upstart/logstash.log
não contém nenhuma entrada do tempo de inicialização.
Aqui está meu /etc/fstab
# <file system> <mount point> <type> <options> <dump> <pass>
/dev/sda2 / ext4 errors=remount-ro,relatime 0 1
/dev/sda3 /home ext4 defaults,relatime 1 2
/dev/sda4 swap swap defaults 0 0
/dev/sda5 /backup ext4 defaults,relatime 1 2
proc /proc proc defaults 0 0
sysfs /sys sysfs defaults 0 0
devtmpfs /dev devtmpfs rw 0 0
Por que o trabalho não está sendo executado?
Quando mudei o sistema de arquivos virtual para o sistema de arquivos, ele foi iniciado corretamente.
Não há arquivo logstash.override
. O serviço udev
está sendo executado
root@pluto:~# ps aux | grep udev
root 329 0.0 0.0 24092 196 ? S 10:57 0:00 upstart-udev-bridge --daemon
root 356 0.0 0.0 34840 2984 ? Ss 10:57 0:00 /lib/systemd/systemd-udevd --daemon
root 11038 0.0 0.0 9948 2140 pts/4 D+ 12:19 0:00 grep --color=auto udev