Назад | Перейти на главную страницу

Настройка Rsyslog для остановки регистрации определенных сообщений

Я хочу, чтобы rsyslog не регистрировал эти сообщения.

[168707.740364] TCP: Peer 192.168.100.1:46199/41503 unexpectedly shrunk window 2027330493:2027331431 (repaired)

Я пробовал это в /etc/rsyslog.conf, но сообщения все еще регистрируются.

if $msg contains 'unexpectedly' then /dev/null

Может кто-то указать мне верное направление?

Если вы используете последнюю версию rsyslog (например, 7), вам необходимо сделать

& stop

после вашего сообщения. В противном случае вы получите

warning: ~ action is deprecated, consider using the 'stop' statement instead [try http://www.rsyslog.com/e/2307 ]

rsyslog требуется оператор, чтобы остановить запись в журнал после совпадения. Добавьте эту строку сразу после оператора if, который у вас уже есть.

& ~

Вам также может потребоваться переместить оба оператора вверх в файле conf, чтобы они анализировались перед некоторыми другими операторами, которые могут записывать их в сообщения. Я меняю свою конфигурацию rsyslog, чтобы она выглядела следующим образом

/etc/rsyslog.conf ($IncludeConfig /etc/rsyslog.d/*.conf)
/etc/rsyslog.d/40-specificdaemon.conf
/etc/rsyslog.d/99-general.conf

Это обеспечивает нужный мне порядок и упрощает управление конфигурацией при отправке обновлений.

Это команда «$ stop», а не «$ stop». Здесь огромная разница.