O nome do arquivo no rsyslog pode ser estático ou dinâmico. O último é útil se você dividir automaticamente as mensagens em arquivos diferentes com base em alguns critérios de mensagem. Preciso que os logs divididos dependam do IP, como: 10.10.10.10.log Por que não funciona? Posso usar algo diferente para criá-lo? Talvez script python/bash?
Meu arquivo de configuração é assim: [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
Responder1
Eu acho que antes de tudo você tem que definir o modelo como
$template DynamicFile,"/var/log/systems/host-%fromhost-ip%.log"
porque você quer separação de acordo com o ip. próximo, acho que o valor correto para registro é
*.* ?DynamicFile