Я использую устаревшую версию rsyslog, а именно версию 5.8 .
Я хотел бы заменить все экземпляры слова в журналах новым словом, таким как «XXXX»
Например, отсканируйте каждую строку журнала и, если появится слово «имя пользователя», замените его на «XXXX»
Маскирующий подход с использованием внешнего питона py
Модуль omprog не работает (https://www.rsyslog.com/masking-data-in-logs-and-rsyslog/)
Но я обнаружил property_replacer и filter опции: (https://www.rsyslog.com/doc/v5-stable/configuration/property_replacer.html)and (https://www.rsyslog.com/doc/v5-stable/configuration/filters.html#examples).
)
Я позаимствовал пример из документа property_replacer, о котором я упоминал выше, который должен найти сообщение со словом username и преобразовать все это в нижний регистр (чтобы я мог получить простой рабочий пример):
У меня есть эта строка в моем файле rsyslog.conf:
if $msg contains 'username' then %msg:::lowercase%
Однако я получаю сообщение об ошибке:
line 38:\"if $msg contains 'username' then %msg:::lowercase%\"\nrsyslogd:
warning: selector line without
actions will be discarded\nrsyslogd:
CONFIG ERROR: could not interpret master config file
Как мне сделать эффективную замену msg в rsyslog v5?
Правильно ли я нацеливаюсь на все входящие сообщения?
Спасибо