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

Пересылка журналов во вложенных каталогах с помощью rsyslog

У меня настроена пересылка журналов с помощью rsyslog и imfile. Как я мог смотреть вложенные файлы журнала?

Прямо сейчас я использую подстановочные знаки, чтобы смотреть, как все файлы соответствуют log/*.log, но у меня есть журналы, вложенные на 1 уровень глубиной, которые мне также нужно переслать: log/EventXXX/*.log.

К сожалению, я не могу изменить эту структуру каталогов, а новые log/Event/ каталоги появляются со временем. Я знаю, что, к сожалению, imfile в настоящее время не поддерживает подстановочные знаки на уровне каталогов (только на уровне файлов).

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

Скорее всего, вы захотите добавить новые директивы конфигурации в новый файл в /etc/rsyslog.d/, чтобы снизить риск того, что что-то пойдет не так и полностью упростить конфигурацию системного журнала. Возможно, не для слабонервных. ;)

В противном случае нет хорошей возможности автоматически распознавать новые подкаталоги, которые вы уже нашли. Потребуется какое-то ручное вмешательство.

В итоге я выбрал Logstash и Logstash-forwarder для этого проекта. Logstash-forwarder поддерживает подстановочные знаки на уровне каталога, не требуя ручного вмешательства.