我有很长的日志消息要通过rsyslog
。日志是通过syslogj
库生成的,该库将日志拆分为1024个字符长度的块,然后将它们发送到rsyslog
(基于此处指出的内容):
有一些应用程序不会忽略 RFC,log4j 1.2.15 就是其中之一(也可能是更高版本)。 如果消息的大小 >= 1024 字节,log4j 将对其进行划分并发送 2 条消息,而不考虑 MTU。
AFAIK 这与 rsyslog 无关,因为我们已经有来自远程源的大量日志,并且设置$MaxMessageSize 64k
也/var/rsyslog.conf
没有改变任何东西。
我们如何增加消息大小syslog4j
?org.productivity.java.syslog4j.SyslogConstants
类中有一个表示1024大小的常量,但我不确定它是否与我的问题有关:
public static final int SYSLOG_BUFFER_SIZE = 1024;
此外,没有找到这项工作的任何方法。(像下面的那些)
SyslogIF syslogInstance;
syslogInstance = Syslog.getInstance("tcp");
syslogInstance.getConfig().setHost(host);
syslogInstance.getConfig().setPort(port);
Ps:这个问题显然有类似的问题,但没有提到它是通过syslog4j
也没有得到任何答案。