Налаштування Rsyslog для припинення реєстрації певних повідомлень


13

Я хочу зупинити 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

Чи може хтось вказати мене в правильному напрямку?

Відповіді:


8

Якщо ви використовуєте останню версію rsyslog (наприклад, 7), вам потрібно це зробити

& stop

після вашого повідомлення. Якщо цього не зробити, ви отримаєте

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

6

rsyslog потребує заяви, щоб припинити реєстрацію після матчу. Додайте цей рядок відразу після заяви, якщо у вас вже є.

& ~

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

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

Це забезпечує замовлення, яке я хочу, і полегшує керування конфігурацією витісняти оновлення.


4
& ~застаріла в нових версіях rsyslog: rsyslog.com/doc/v8-stable/compatibility/v7compatibility.html . Це ~також відоме як дія відкидання, якщо ви шукаєте на цій сторінці, ви побачите примітку про це. Ви повинні використовувати & stopрухатися вперед.
slm

2

Команда - "$ stop", а не "$ stop". Там величезна різниця.


4
Поясніть будь ласка. Наскільки я знаю, це if ... then stopчи & stop. Ніколи не бачив $stopзмін, де згадувався ніде. Я щось пропустив?
mivk
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.