我已成功将日志记录从 syslogd 切换到 syslog-ng。但是,我希望 syslog-ng 框能够接收网络上所有运行 syslog 的框中的所有日志。我该怎么做?
答案1
嗯,对于 syslogd 来说,这应该很简单。在每个客户端上,将以下行添加到 syslog.conf:
*.debug @syslogng-host
这是我做事的方式,我让 syslog-ng 主机在那里排序和/或丢弃。
请记住,这会通过网络发送所有内容(包括登录成功/失败)。这可能不是您想要的。
请记住,syslog.conf 喜欢制表符,而不是空格。
答案2
使用 syslog-ng,您需要将目标添加到 /etc/syslog-ng/syslog-ng.conf
destination loghost {
tcp("your.hostname.goes.here" port(514));
};
然后你需要一个日志规则。类似这样的规则应该可以工作。
log{
source(s_all);
destination(loghost);
};
您可能需要将 s_all 更改为 syslog-ng.conf 中定义的一般日志源。然后,您需要在日志收集器的标准日志源中添加一行这样的内容。
tcp();