Filebeat vs Rsyslog 转发日志

Posted

技术标签:

【中文标题】Filebeat vs Rsyslog 转发日志【英文标题】:Filebeat vs Rsyslog for forwarding logs 【发布时间】:2017-11-07 08:19:09 【问题描述】:

我目前正在使用filebeat将日志转发到logstash,然后再到elasticsearch。

现在,我正在考虑通过 rsyslog 将日志转发到 logstash。这样做的好处是,我不需要在每台服务器上安装和配置 filebeat,而且我可以转发 JSON 格式的日志,易于解析和过滤。

我可以使用 TCP/UDP 通过 rsyslog 将日志转发到 logstash。

我想知道 rsyslog 相对于 filebeat 在性能、可靠性和易用性方面的更多优势和劣势。

【问题讨论】:

您可以使用 rsyslog 直接发送到 Elasticsearch:sematext.com/blog/2015/10/05/… 确实我现在正在这样做。 【参考方案1】:

Rsyslog 具有内存中的磁盘队列。这应该负责缓冲消息。

Rsyslog queue-modes

【讨论】:

【参考方案2】:

当您将 Beats 与 Logstash 结合使用时,您就有了一种称为“背压管理”的功能 - 例如,如果网络出现问题,Beats 将停止向 Logstash 服务器充斥消息。

使用 Beats 的另一个优势是,在 Logstash 中,您可以拥有持久化队列,这样可以防止在您的 elasticsearch 集群出现故障时丢失日志消息。所以 Logstash 会将消息持久化在磁盘上。请小心,因为如果您使用 UDP,Logstash 无法确保您不会丢失消息,this link 会很有帮助。

【讨论】:

以上是关于Filebeat vs Rsyslog 转发日志的主要内容,如果未能解决你的问题,请参考以下文章

rsyslog转发nginx日志(rsyslog发送到logstashh)

如何使用 rsyslog 客户端转发日志

rsyslog 系统日志转发

Linux 之 rsyslog 系统日志转发(转载)

k8s日志收集解决方案

使用Filebeat和Logstash集中归档日志