我正在从专有应用程序获取系统日志事件。这可能是应用程序的错误,也可能是 rsyslogd 的错误。
事件写法如下:
Aug 15 16:00:00 10.11.12.13 Event1 from this wonderful product using this odd
Aug 15 16:01:00 10.11.12.13 format. Event2 from this wonderful product using
Aug 15 16:02:00 10.11.12.13 this odd format. Event3 from this wonderful produ
Aug 15 16:03:00 10.11.12.13 ct using this odd format.
你明白了。系统日志中的每个记录大约有 2000 个字符。
我不确定这是否是 TCP 系统日志定义不明确的一个问题?
rsyslogd 或 syslog TCP 方面的专家能否提供一些建议,说明问题可能出在哪里?我可以在 rsyslogd 端做些什么来修复这个问题吗?或者,这是 TCP syslog 状态的正常混乱吗?
答案1
rsyslogd 未配置为这样换行。可以使用日志格式模板,但我不确定它们是否允许这样换行。这很可能是应用程序发送给 rsyslogd 的内容。
您可以尝试捕获端口上的通信并检查正在发送的内容(tcpdump -s 0 -A port 514
)。
另一个测试是用来logger
写一行很长的文字。在我的测试中,rsyslogd 只将其写为一行(没有换行)。