Динамическое имя файла не работает в rsyslog

Динамическое имя файла не работает в rsyslog

Имя файла в rsyslog может быть как статическим, так и динамическим. Последнее полезно, если вы хотите автоматически разбить сообщения на разные файлы на основе некоторых критериев сообщений. Мне нужны разделенные журналы, зависящие от IP -типа: 10.10.10.10.log Почему это не работает? Могу ли я использовать что-то другое для его создания? Может быть, скрипт python/bash?

Мой файл конфигурации выглядит так: [rsyslog v5]

#### RULES ####

local6,local5.*                              /var/log/systems/device-all.log

<=15.info;mail.none;authpriv.none;cron.none                /var/log/messages

authpriv.*                                              /var/log/secure

mail.*                                                  -/var/log/maillog

cron.*                                                  /var/log/cron

*.emerg                                                 *

uucp,news.crit                                          /var/log/spooler

local7.*                                                /var/log/boot.log

$template DynamicFile,"/var/log/systems/host-%HOSTNAME%.log"

*.*    -?DynamicFile

local6,local5.*                               /var/log/systems/device-all.log

решение1

Я думаю, что прежде всего вам нужно установить шаблон как

$template DynamicFile,"/var/log/systems/host-%fromhost-ip%.log"

потому что вы хотите разделение по IP. далее я думаю, что правильное значение для ведения журнала это

*.*    ?DynamicFile

Связанный контент