为什么要将 syslog-ng 的 log_msg_size 从默认的 64k 改为其他值?

为什么要将 syslog-ng 的 log_msg_size 从默认的 64k 改为其他值?

根据syslog-ng 管理指南log_msg_size默认为 64k(65536 字节)

不过,我见过一些 syslog-ng 配置文件示例(例如这个)将其降至<18k(18192字节)

为什么要改变默认行为——尤其是,为什么要减少它?

答案1

这背后的主要原因是资源限制或传统用例,目的地可能不支持长消息。

log_msg_size()限制接收消息的最大大小。将它与log-fifo-size()log-iw-size()选项一起使用,可以粗略估计 syslog-ng 的最大可能内存使用量,因此它有助于设置内存消耗的上限。

答案2

另一种情况是,较旧的 Syslog-NG 版本(例如随 RHEL 7 分发的版本)的默认值要低得多(我想到的是 4 或 8 kB)。通常情况下,您需要提高该限制。实际上,如果您在旧服务器上看到这些 18kB,则可能是实际提高了,而不是降低了。

相关内容