Как перенаправить журналы на устройство fifo?

У меня есть следующая строка в файле конфигурации rsyslog:

*.*;auth,daemon,kern,user -/dev/logi 

и он делает то, что должен, но я хотел отправить несколько журналов iptables в другой файл, поэтому я добавил следующий файл в файл rsyslog.conf:

 :msg,contains,"IPTABLES:" /var/log/iptables & stop 

и я создал / dev / fw устройство, но я не знаю, как отправить новое содержимое файла на это устройство. Есть ли способ сделать это?

One Solution collect form web for “Как перенаправить журналы на устройство fifo?”

Наконец я нашел решение.

Это устройство fifo, которое я создаю при загрузке системы:

 LOG_DEV=/dev/logi if [ ! -r $LOG_DEV ]; then mkfifo $LOG_DEV chmod 640 $LOG_DEV chown root:morfik $LOG_DEV fi 

Я просто добавил это в файл /etc/init.d/rsyslog .

Имея это устройство, я могу отправить туда все журналы, поместив следующую строку в файл /etc/rsyslog.conf :

 *.* -/dev/logi 

Это первая строка в разделе правил, поэтому каждый журнал идет туда и продолжает обрабатывать другие правила в файле конфигурации. Следующее правило в этом файле:

 :msg,contains,"IPTABLES:" /var/log/iptables & stop 

Который отправляет журналы iptables в определенный файл, и после этого rsyslog просто прекращает обработку записей, содержащих IPTABLES: фразу. Следующие правила – это обычные правила в файле конфигурации rsyslog.

Поэтому я получил то, что хотел, – все журналы отправляются на устройство fifo + отдельный файл журнала для записей iptables.

  • если утверждение, по-видимому, не работает в rsyslog
  • Добавить маркер для загрузки системы в syslog
  • Где rsyslog поддерживает объект local0?
  • Изолировать ошибки аутентификации SSH в собственный файл журнала на RHEL 6.6
  • systemd, rsyslogd - где находятся журналы?
  • rsyslog.conf только частично заслуженно
  • Узнайте, что вызывает случайные перезагрузки, если / var / log / syslog пуст
  • как показать цвета в syslog
  • rsyslog с использованием короткого имени хоста
  • Вложенная фильтрация в rsyslogd
  • Предотвращение вывода в / var / log / syslog
  • Linux и Unix - лучшая ОС в мире.