Если файлы журналов генерируются на клиентском сервере через syslog
средство, то лучший способ - настроить демон системного журнала клиентов для пересылки этих журналов на отдельный хост. Например, если у меня есть внутреннее имя, syslog.private
которое указывает на удаленный сервер, на который я хочу получать записи журнала. Я могу добавить следующую строку в /etc/syslog.conf
на клиентском сервере.
*.* @syslog.private
и затем перезапустите демон системного журнала на клиенте
service syslog reload
Это приведет к тому, что каждая запись, которая проходит через системный журнал клиентов, будет отправлена по проводной связи, syslog.private
и если эта машина настроена правильно, записи также будут доступны там. В системах RedHat это контролируется /etc/sysconfig/syslog
файлом. Убедитесь, что -r
опция присутствует
% grep "SYSLOGD" /etc/sysconfig/syslog
SYSLOGD_OPTIONS="-m 0 -r"
и затем перезапустите демон системного журнала на принимающем сервере.
Вы также можете контролировать то, что пересылается на удаленный сервер, добавляя исключения, см. Пример ниже
*.*;mail.none @syslog.private
Что говорит, переслать все, syslog.private
за исключением того, что отправлено на mail
объект.
Если это решение подходит вам, вы можете рассмотреть одну из альтернативных реализаций системного журнала , таких как rsyslog или syslog-ng , которые предоставляют дополнительные параметры ведения журнала и хранения.