[syslog-ng]syslog-ng & BSD Relay Host
Philip Webster
syslog-ng@lists.balabit.hu
Mon, 27 Oct 2003 10:39:52 +1000
Hello,
I'm having some trouble with a BSD relay host, and wonder if anyone out
there may have a solution. The relay picks up messages from routers,
switches, PIXes, etc and sends them via UDP (standard syslog daemon) to
a central syslog-ng host. The messages 'on the wire' look like this
(tcpdump output):
Forwarded from host.domain: Oct 27 2003 09:43:47: %PIX-4-106023: Msg ...
So the hostname in the syslog message is 'Forwarded from host.domain'.
This appears to be interpreted by syslog-ng as 'Forwarded', which
adheres (as it should) to RFC 3164.
I'm splitting up the logs based on hostname, so I'd like to be able to
log to a file named after the host which sent the log. So far all of my
playing around with options has resulted in either:
1) logs go to a file named relayhost with the entry:
relayhost from host.domain: Oct 27 2003 09:43:47: %PIX-4-106023: Message
so this is just the message on with wire with the 'relayhost' in place
of 'Forwarded',
2) logs go to a file named 'Forwarded' with the entry:
Forwarded from host.domain: Oct 27 2003 09:43:47: %PIX-4-106023: Message
so the word 'Forwarded' is taken to be the hostname, or
3) logs go to a file named 'Forwarded' with the entry:
Forwarded/relayhost from host.domain: Oct 27 2003 09:43:47:
%PIX-4-106023: Message
so the hostname still appears to be 'Forwarded', but the chaining
options also show the relay host.
What I would like is to have the logs placed in a file named after the
original sender (host.domain in the tcpdump output above). Is this
possible? All my attempts have relied around using global options and
file templates - I haven't looked at using filters yet, so maybe this is
what I need to do.
This appears to be a BSD problem, as it modifies the actual message
before relaying it on, but I cannot find an option to stop BSD syslog
from doing this.
Any thoughts?
Thanks
Phil