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

Удаленное ведение журнала для нескольких виртуальных хостов Apache с помощью syslog-ng

Я запускаю пару веб-серверов Apache, каждый из которых имеет 4-8 отдельных виртуальных хостов на каждом из них. Я пытаюсь настроить выделенный сервер журналов, который хранит журналы доступа к каждому виртуальному хосту и ошибок в отдельном каталоге для этого виртуального хоста.

Например, на сервере регистрации
/var/log/remove/10.0.0.2/virtualhost1 содержит access_log и error_log
/var/log/remove/10.0.0.2/virtualhost2 содержит access_log, а error_log /var/log/remove/10.0.0.3/virtualhost3 содержит access_log и error_log
и так далее...

Прямо сейчас я разделил его по хостам, но я не могу понять, как это сделать дополнительно с помощью виртуального хоста. Вот соответствующие строки из syslog-ng.conf сервера журналов

исходный r_src {tcp (ip ("0.0.0.0") порт (5140)); };
назначение r_all {файл ("/ opt / splunk / logs / $ HOST"); };
журнал {источник (r_src); пункт назначения (r_all); };

Любая помощь будет оценена. Спасибо!

Думаю, это должно ответить на ваш вопрос:

Резюме: syslog-ng может извлекать поля из ваших сообщений журнала, а затем вы можете использовать эти поля в подстановках шаблонов. Пока вы регистрируете имя виртуального хоста (% v) в журналах Apache, у вас должна быть вся необходимая информация.