У меня есть программа, которая выводит в системный журнал с заданным тегом / именем программы. Я хотел бы иметь возможность фильтровать трафик системного журнала из этой программы и отправлять его на удаленный сервер системного журнала, оставляя весь другой трафик системного журнала локальным.
Я могу отправить весь трафик на удаленный сервер с
*.* @remote_server
Как мне это отфильтровать?
Ответы:
Конфигурационные файлы Rsyslog находятся в:
/etc/rsyslog.d/*.conf
Rsyslog читает файлы conf последовательно, поэтому важно, чтобы вы назвали свой файл конфигурации так, чтобы конкретная конфигурация загружалась прежде, чем что-либо еще произойдет. Таким образом, имя файла , начиная с ведущим нулем, то есть
00-my-file.conf
. Лучше создать новый файл, чтобы обновления и т. Д. Не перезаписывали вашу локальную конфигурацию.Пример:
Или, если вы просто хотите отказаться от определенных записей:
В вашем случае: (UDP)
Или (TCP)
В
& ~
средство для остановки обработки согласования (предыдущей строки только!) Записей в дальнейшем.Еще немного общей информации:
Кроме того, всегда проверяйте, чтобы фильтры были в одной строке:
Полезные фильтры:
Операторы:
Дополнительная информация: http://wiki.rsyslog.com/index.php/Configuration_Samples
источник
Мы также можем попробовать это. Это работает нормально для меня.
ПРИМЕЧАНИЕ: здесь
testing_docker
владение папками должно быть предоставлено пользователю системного журнала. Следуйте приведенной ниже команде, чтобы установить разрешения.источник