3

我们的团队现在使用 zabbix 进行监控和警报。此外,我们使用 fluent 将日志收集到中央 mongoDB 并投入使用一周。最近我们在讨论另一个解决方案——Logstash。我想问他们有什么区别?在我看来,我希望将 zabbix 用作数据收集和警报发送平台,而 fluent 在整个基础架构中扮演“数据收集”的角色。虽然我查看了 Logstash 网站并发现 Logstash 不仅是一个日志收集系统,而且还是一个用于收集、呈现和搜索的完整解决方案。

谁能给点建议或分享一些经验?

4

2 回答 2

2

Logstash 非常通用(免责声明:只玩了几个星期)。

我们研究 Graylog2 有一段时间了(监听 syslog 并提供了一个不错的搜索 UI),但其中的消息处理功能是基于 Drools 引擎的,充其量是.. 晦涩难懂的。

我发现让 logstash 从我们的中央服务器读取 syslog 文件、处理事件并输出到 Graylog2 要容易得多。给了我们更多的灵活性,并且应该允许我们在操作系统级别的系统日志数据旁边添加应用程序级别的事件。

它有一个 zabbix 输出,所以你可能会发现它值得一看。

于 2012-03-20T18:10:43.110 回答
1

Logstash 非常适合 Zabbix。

我在 github 上创建了一个 repo 以获取 logstash statsd 输出并将其发送到 Zabbix 以进行趋势/警报。正如另一个人提到的,logstash 还有一个 Zabbix 输出插件,非常适合通知/发送匹配的事件。

就个人而言,我更喜欢原生Logstash->Elasticsearch后端而不是 Logstash->Graylog2(->Elasticsearch)

它更易于管理,尤其是在您拥有大量日志数据的情况下。目前,Graylog2 也使用 Elasticsearch,但对所有数据只使用一个索引。如果您定期清理旧数据,这意味着相当于大量 SQL “delete from table where date>YYYY.MM.DD”类型调用来清理旧数据,其中 Logstash 默认为每日索引(相当于“删除表 YYYY.MM.DD”),所以清理更好。

它还导致更清晰的搜索,需要更少的堆空间,因为您可以搜索已知日期,因为索引以其包含的当天数据命名。

于 2012-12-21T21:28:47.507 回答