Em vez de (ou além de) usar recursos de syslog, considere a substituição do syslogd de ações por syslog-ng . Entre outras coisas, permite filtrar mensagens de log remotas com base no endereço do host que as enviou. Nós temos uma configuração simples em nosso servidor syslog que faz isso:
source remote_log { udp(ip(x.x.x.x) port(514)); };
destination remote { file("/var/log/remote/$HOST.log"); };
log { source(remote_log); destination(remote); };
Isso faz com que a mensagem do syslog de cada host termine em /var/log/remote
em um arquivo com o nome dos endereços IP dos hosts. O syslog-ng permite que você seja muito mais sofisticado do que se desejar (por exemplo, filtrar mensagens individuais com base em correspondências de expressões regulares), mas isso cobre o que você estava perguntando.