Ошибка централизованного лог-сервера в Linux

введите описание изображения здесь Я настроил централизованный сервер для всех серверов Linux. Я могу пересылать все системные журналы и журналы аудита базы данных Oracle на централизованный сервер. но моя проблема заключается в том, что все журналы системы и базы данных записываются в один файл. Мое требование – записывать журналы базы данных в разные файловые и системные журналы в разные файлы в централизованном месте. Ниже вы найдете скрипты.

конфигурация удаленного сервера (192.168.1.44)

$ cat /etc/rsyslog.conf # Provides UDP syslog reception $ModLoad imudp.so $UDPServerRun 514 # Provides TCP syslog reception $ModLoad imtcp.so $InputTCPServerRun 514 *.info;mail.none;authpriv.none;cron.none /var/log/messages #Save oracle rdbms audit trail to oracle_audit.log local0.info /u01/app/oracle/admin/prod/adump/oracle_audit.log *.* @192.168.1.150:514 

Централизованная конфигурация сервера (192.168.1.150):

 $ cat /etc/rsyslog.conf # Provides UDP syslog reception $ModLoad imudp.so $UDPServerRun 514 # Provides TCP syslog reception $ModLoad imtcp.so $InputTCPServerRun 514 $template RemoteHost,"/backup/CentralizeLogLocation/Linuxlogs/%HOSTNAME%/%HOSTNAME%-%$YEAR%%$MONTH%%$DAY%.log" 

if ($ hostname! = '') then? RemoteHost

& ~

Файлы создаются в этом формате для каждого хоста в централизованном сервере thsc-vmmanager-20160614.log

Похоже, все в порядке – я получил то, что хочу, но оба журнала аудита базы данных Oracle и системные журналы записывают в один файл журнала. Я также прикрепляю скриншот.

Теперь необходимо разделить оба файла. Пожалуйста, расскажите мне, как я могу это достичь.

введите описание изображения здесь

2 Solutions collect form web for “Ошибка централизованного лог-сервера в Linux”

Вы можете добавить средство syslog с %syslogfacility-text% в шаблон remoteHost следующим образом:

 $template RemoteHost,"/backup/CentralizeLogLocation/Linuxlogs/%HOSTNAME%/%HOSTNAME%-%syslogfacility-text%-%$YEAR%%$MONTH%%$DAY%.log" 

На вашем централизованном сервере вы создали шаблон, но вы его не использовали. Попробуйте добавить в конце

 if $fromhost-ip startswith 192.168.1.44 then -?RemoteHost & ~ 

или

 if $syslogfacility-text isequal 'local0' then -?RemoteHost & ~ 

или вы можете объединить их для регистрации вашего удаленного объекта local0, то есть журналов oracle, в один файл, а остальное на другое, например:

 if $fromhost-ip == '192.168.1.44' and $syslogfacility-text == 'local0' then /var/log/oracle.log & ~ *.* /var/log/messages 

Строка & ~ удаляет сообщения оракула после того, как они были сохранены в файл предыдущим if . См. Rsyslog.com за большой помощью и примерами.

Имена файлов в начальных строках, if могут быть зафиксированы как /var/log/oracle.log , или шаблон, который вы ранее определили, например -?OracleData . Поэтому вам нужно добавить, например,

 $template OracleData,"/backup/CentralizeLogLocation/Oracle/%HOSTNAME%/%HOSTNAME%-%$YEAR%%$MONTH%%$DAY%.log" if $syslogfacility-text isequal 'local0' then -?OracleData & ~ if $fromhost-ip startswith '192.168.1' then -?RemoteHost & ~ *.* /var/log/messages 

Поскольку ваши сообщения журнала оракула содержат слово «Oracle», вы можете альтернативно разделить эти сообщения с

 if $msg contains 'Oracle' then -?OracleData & ~ 

Обратите внимание, что порядок этих строк имеет значение. Шаблоны должны быть определены до их использования. Правила применяются к каждому сообщению по очереди. Если вы не поместите строки & ~ сразу после строк if , сообщение может оказаться в нескольких файлах журнала.

  • Греп с пробелами внезапно не работает
  • logrotate записывает старый app.log.1 вместо app.log
  • Откуда берутся эти записи журнала регистрации и кто их создает?
  • История Loggin для syslog
  • rsyslog.conf только частично заслуженно
  • не удалось получить журналы на CentOS 7.3 с удаленных устройств
  • Как реплицировать данные из / dev / log на несколько приемников rsyslog
  • Изменение формата даты auth.log
  • Расположение файла для Syslogs в машине Centos
  • Динамическое имя файла не работает в rsyslog
  • Настройка SELINUX для ведения журнала в файл, который находится вне / var / log
  • Interesting Posts

    Как удалить код возврата из подсказки терминала в Sugar на Stick?

    Трубный вывод двух программ, запущенных параллельно другой программе

    Неограниченное загрузочное ядро

    как равномерно выполнять тесты на linux

    Инструменты для перетаскивания glade gtk

    Экран включается автоматически (принудительно отключается команда xset dpms)

    picocom -b 115200 – Зачем вам нужно указывать скорость?

    grep для нескольких регулярных выражений и подсчет количества вхождений

    Неправильное использование диска на корпоративной Linux

    Каковы накладные расходы на использование нескольких более мелких устройств рейдов в сравнении с секционированными устройствами рейдов в виде физических томов?

    Обратная связь Symlink

    Физический и логический размер экстентов

    Как установить файл xmodmap для диспетчера сеансов (или, по крайней мере, SLiM) из-за сломанного физического ключа

    Не удается получить голанг, работающий над Fedora 19

    Переключение программного обеспечения с Linux на OS X, что такое gotchas?

    Linux и Unix - лучшая ОС в мире.