CentOS 集中日志记录、syslogd、rsyslog、syslog-ng、logstash 发送器?

CentOS 集中日志记录、syslogd、rsyslog、syslog-ng、logstash 发送器?

我正在尝试找出设置一个中心位置来存储和查询服务器日志的最佳方法。syslog、Apache、MySQL 等。

我找到了几个不同的选项,但不确定哪个最好。我正在寻找一种易于安装且在许多虚拟机上保持更新的东西。我可以将它添加到 VM 模板中,但我还希望它易于安装以降低 VM 复杂性。

我目前找到的选项是:

  • 系统日志
  • 系统日志工具
  • rsyslog
  • syslogd/syslog-ng/rsyslog 到 logstash/ElasticSearch
  • logstash 代理中的各个日志“客户端”将日志发送到 Redis/logstash/ElasticSearch

以及上述各种排列组合。

从日志“客户端”的角度来看,什么是最有弹性和最轻量的?
我想避免日志“客户端”因为无法将其日志发送到日志服务器而挂起的情况。此外,我仍然希望保留本地日志记录和 logrotate 提供的轮换/保留。

您对以上任何内容有何想法/建议或理由?
或者您有完全不同的结构建议吗?

答案1

我认为目前最可靠的选择(不包括商业软件解决方案)是纯粹的syslog-ng

答案2

我认为最好的是 syslog-ng,易于配置,非常易于维护,是一款出色且功能强大的工具。顺便说一句,如果您每天的日志量不超过 500M,您可以查看 splunk,您只需要将日志转发器添加到机器映像并配置几个文件,它就会发挥神奇的作用:) 它有很多适用于不同日志类型的应用程序,解析能力强等。一切都取决于您需要什么。

答案3

直到最近,我们还在使用 rsyslog灰树用于集中日志记录。它工作得非常好。它使用 GELF 协议,该协议还具有拥有各种编程语言库的优势。

也就是说,我们正在转向洛格利因为它比维护我们自己的集中式日志服务器更便宜。由于 Loggly 推荐使用 syslog-ng,我们也在考虑切换到它,尽管 rsyslog 似乎更好一些 - 例如,rsyslog 配方可用于网络丢失时的日志缓存和对 GELF 的支持。

答案4

最新的 rsyslog 可能是最快和最轻量的选项之一。您可以免费获得磁盘和内存缓冲区,并且可以通过以下方式输出到 Elasticsearchomelasticsearch 库。以下博客文章可能会帮助您开始做这样的事情:

http://blog.sematext.com/2013/07/01/recipe-rsyslog-elasticsearch-kibana/

相关内容