Crie um arquivo syslog separado para cada host com rsyslog

Crie um arquivo syslog separado para cada host com rsyslog

Eu tenho um servidor syslog (executando o rsyslog no RHEL 7.4) que consolida todos os syslogs dos meus dispositivos de rede. Está escutando na porta TCP/514.

Quero redirecionar os logs de cada dispositivo para um arquivo diferente em um diretório dedicado (com base no endereço IP), em vez de colocá-los todos no formato /var/log/messages. Como eu posso fazer isso?

Responder1

Parece que está documentado no site rsyslog aqui: https://www.rsyslog.com/storing-and-forwarding-remote-messages

Para resumir:

Você deve definir um modelo para arquivos de log, algo como, por exemplo:

# log every host in its own directory
$template RemoteHost,"/var/syslog/hosts/%HOSTNAME%/%$YEAR%/%$MONTH%/%$DAY%/syslog.log"

Em seguida, aplique este modelo a mensagens provenientes de hosts remotos:

# Remote Logging
$RuleSet remote
*.* ?RemoteHost

informação relacionada