如何将syslog-ng中的log_message_size()增加到8K以上,仅针对特定源和覆盖默认值

时间:2017-01-09 05:20:46

标签: logging size syslog msg syslog-ng

根据文档,Syslog-ng默认允许每封邮件长度为8192字节。当大小超过8K时,Syslog将消息拆分为两个。

当我将log_msg_size()参数全局应用并将修改后的值应用于16K时,它可以正常工作。但我想将此参数仅应用于特定来源;允许最大为16K的事件并将全局参数保持为默认值。

是否可以仅将log_msg_size()应用于特定来源?

如果是,那么我应该在下面的例子中提到它。如果我们将syslog_msg_size值修改为16K是否会达到我的系统/ CPU性能?请指教。

示例:

source s_tets {
        udp(ip(0.0.0.0) port(100));
        tcp(ip(0.0.0.0) port(100) max-connections(100));
};

destination d_test {file("/filepath" };
log { source(s_test); destination(d_dest); };

1 个答案:

答案 0 :(得分:1)

  • 您可以在配置文件的options {}部分中为syslog-ng全局设置log_msg_size()选项。这会影响每个来源。例如:

tcp(ip(0.0.0.0) port(100) max-connections(100) log_msg_size(16384) );

  • 要仅为特定源更改日志消息的最大大小,请使用源声明中的log_msg_size()选项,例如:

Dynamic Linq