syslog-ng奇怪地parsing$ MSG
我正在从syslog-ng 2.0.9迁移到3.8.1大型系统日志服务器场。 我有传入的数据报,看起来像这样: <14>Aug 14 21:28:49 pa01.foo.com 1,2017/08/14 21:28:49,009401031978,THREAT,url,… 实际的消息在pa01.foo.com主机名后面开始。 在2.0.9上,我只是使用“$ MSG”作为我的输出模板,输出文件将得到: 1,2017/08/14 21:28:49,009401031978,THREAT,url,… 这是我想要的。 在3.8.1上,它决定实际的消息开始是在不同的地方,我的输出如下所示: 21:28:49,009401031978,THREAT,url,… 我失去了领先的1,2017/08/14 。 我发现在源处设置flags(no-parse) ,并使用parser { syslog-parser(); };将syslogparsing器添加回pipe道parser { syslog-parser(); }; parser { syslog-parser(); }; 工作正常。 综上所述: source net_src1 { network( transport("udp") port(4514) flags(no-parse)); }; source net_src2 { network( transport("udp") port(5514)); }; source net_src3 { syslog( transport("udp") port(6514)); }; […]