Hi,
My log source sends data over syslog in CEF (Arcsight format).
I have a simple parser written in Syslog-NG that takes advantage of the CEF format (that is all messages are in eight fields separated by a pipe char).
-----------xxxxxxxxxxxxxxxxx-------------------
parser p_cef {
csv-parser(columns("cef.ff","cef.vendor","cef.product","cef.c4","cef.c5","cef.c6","cef.c7","cef.c8")
delimiters("|")
flags(drop-invalid)
);
};
destination d_file { file("/var/log/net/${cef.vendor}/${cef.product}/logfile"); };
log { source(s_tcp); parser(p_cef); destination(d_file); };
-----------xxxxxxxxxxxxxxxxx-------------------
Some events coming in contain binary data that get translated into control characters and create thousands of directories with garbage in the names.