我正在尝试找出设置一个中心位置来存储和查询服务器日志的最佳方法。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
答案4
最新的 rsyslog 可能是最快和最轻量的选项之一。您可以免费获得磁盘和内存缓冲区,并且可以通过以下方式输出到 Elasticsearchomelasticsearch 库。以下博客文章可能会帮助您开始做这样的事情:
http://blog.sematext.com/2013/07/01/recipe-rsyslog-elasticsearch-kibana/