Удаленный вход к определенной структуре каталогов с rsyslog

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

<root_dir>/<server_name>/<year>/<month>/<day>/{messages, mail, auth, etc}.log

Это - что-то, что я могу сделать с одними только шаблонами rsyslog, или я должен использовать другую утилиту для перемещения файлов в надлежащее расположение файла?

2
задан 29 July 2014 в 03:06
1 ответ

Не знаю, как создавать каталоги, но с остальным нужно работать с фильтрами и динамическими именами файлов.

Обычно в таком случае я бы записывал в журнал шаблон файла.

/var/log/<server_name>{messages,mail,auth,etc}.YYYYMMDD 

Разделение логов сервером может затруднить трассировку между серверами. Сообщения лога обычно содержат исходный сервер, поэтому легко получить сообщения для конкретного сервера с помощью awk, grep или любого другого инструмента для сопоставления шаблонов. Масштабирование такого количества лог-файлов также может быть затруднено, и вы можете столкнуться с ограничениями по ресурсам.

Обычно вращение лог-файлов обрабатывается программой типа logrotate. Это позволяет вам контролировать частоту вращения лог-файлов для определенных файлов, а также контролировать количество сохраняемых версий. Это действие postrotate может быть использовано для разделения даты от только что вращающихся файлов на нужную форму. Это может привести к лучшему масштабированию.

0
ответ дан 3 December 2019 в 14:59

Теги

Похожие вопросы