Как отключить регистрацию ошибок logstash в системном журнале

Все ошибки Logstash регистрируются в / var / log / logstash / *, но все журналы ошибок Logstash также записываются в / var / log / syslog. Есть ли способ отключить регистрацию ошибок Logstash в / var / log / syslog?


person Arash Mousavi    schedule 15.11.2019    source источник


Ответы (2)


Я полагаю, вы запускаете logstash из systemd. По неизвестной причине logstash печатает журналы на stdout / stderr, поэтому journald перенаправляет вывод консоли в syslog. Перенаправить stdout / err в файл модуля systemd следующим образом:

[Service]
Type=simple
Restart=always
WorkingDirectory=/data/logstash
ExecStart=/usr/bin/sudo -u logstashuser bash -c "/opt/logstash/bin/logstash --path.settings /opt/logstash/conf >/dev/null 2>/logs/logstash/logstash.error.log"

тогда

systemctl daemon-reload 

а также

systemctl stop logstash.service
systemctl start logstash.service
person Dmitry Perfilyev    schedule 10.12.2019

Другое решение - изменить /etc/systemd/system/logstash.service и изменить эти два параметра следующим образом

StandardOutput=null
StandardError=null
# cat /etc/systemd/system/logstash.service
[Unit]
Description=logstash

[Service]
Type=simple
User=logstash
Group=logstash
# Load env vars from /etc/default/ and /etc/sysconfig/ if they exist.
# Prefixing the path with '-' makes it try to load, but if the file doesn't
# exist, it continues onward.
EnvironmentFile=-/etc/default/logstash
EnvironmentFile=-/etc/sysconfig/logstash
ExecStart=/usr/share/logstash/bin/logstash "--path.settings" "/etc/logstash"
StandardOutput=null
StandardError=null
Restart=always
WorkingDirectory=/
Nice=19
LimitNOFILE=16384

# When stopping, how long to wait before giving up and sending SIGKILL?
# Keep in mind that SIGKILL on a process can cause data loss.
TimeoutStopSec=infinity

[Install]
WantedBy=multi-user.target

Тогда конечно

#systemctl daemon-reload
#systemctl restart logstash
person TKrakowian    schedule 05.01.2021