我目前正在使用 Balabit 的 Syslog-NG 来集中我的 IT 日志并将其传送到远程服务器,通过TCP 连接,仅允许一个监听端口。
问题是,我的日志量非常重要(大约 15,000 条消息/秒),我可以看到消息正在我的磁盘中假脱机(我实际上已启用disk-buf-size(300G)
并mem-buf-length(10M)
在我的destination
TCP 对象中)。
你知道是否有办法:
- 以提高绩效?
- 为对象打开多个 TCP 套接字
destination
(我尝试过max_connections
,threaded
等等,但没有用)
syslog-ng 版本:3.9
syslog-ng.conf 示例:
options {
perm(0644);
stats_freq(30)
log_msg_size(65535)
flush_lines(0);
time_reap(10);
threaded(yes);
time_reopen(10);
log_fifo_size(10M);
chain_hostnames(off);
use_dns(no);
use_fqdn(no);
create_dirs(yes);
dir_perm(0755);
keep_hostname(yes);
keep-timestamp(yes);
};
...
destination dst_siem_port_1234 {
tcp(
"192.168.0.1"
port(1234)
disk-buffer( mem-buf-length(10M) disk-buf-size(300G) reliable(no) )
);
};
log {source(mysrc); filter(f_myfilter); destination(dst_siem_port_1234); };
查找键盘上的拼写错误,逐屏复制:)
答案1
尝试设置flush_lines(100);
选项,以便客户端不会一次发送一行(至少这是我对将其设置为 0 时发生的情况的理解)。