El nombre del archivo dinámico no funciona en rsyslog

El nombre del archivo dinámico no funciona en rsyslog

El nombre del archivo en rsyslog puede ser estático o dinámico. Este último es útil si divide automáticamente los mensajes en diferentes archivos según algunos criterios de mensaje. Necesito registros divididos que dependan de la IP, como: 10.10.10.10.log ¿Por qué no funciona? ¿Puedo usar algo diferente para crearlo? ¿Quizás script python/bash?

Mi archivo de configuración se ve así: [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

Respuesta1

Creo que primero que nada debes configurar la plantilla como

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

porque quieres separación según ip. A continuación, creo que el valor correcto para el registro es

*.*    ?DynamicFile

información relacionada