【发布时间】:2014-10-25 14:06:00
【问题描述】:
我们正在设置来自多个相关应用程序的日志,以便将日志事件导入 Elasticsearch(通过 Logstash)。创建 Kibana 仪表板以可视化每个应用程序的日志索引很简单,但由于应用程序是相关的并且其活动属于同一管道,因此构建一个显示从不同应用程序收集的聚合信息的仪表板会很棒。这样的仪表板对于跟踪故障和性能问题特别有用。
现在我可以看到实现聚合仪表板的三种主要方法:
- 保留单独的应用程序日志并配置 Kibana 仪表板,以使用来自不同应用程序的信息。恐怕这可能是一项具有挑战性的任务,我什至不确定 Kibana 是否完全支持它。
- 修改应用程序日志记录,使它们都记录到同一个索引。我不喜欢的是日志事件结构必须跨应用程序统一,并且它们是由不同的人用不同的语言构建的。我对集中控制日志等低级细节失去了信心。
- 保留应用程序日志和相应的 Elastichsearch 索引,但要设置一个包含汇总信息的新索引。 This article 描述了如何配置 Elasticsearch 以将其日志转储到 Logstash,然后将它们插入回 Elasticsearch 进行搜索。乍一看,这种方法可能看起来令人惊讶:为什么需要再次将日志数据重新插入到同一个数据库中?这是另一个索引,它会增加开销、使用更多空间等。但它提供了以适合聚合 Kibana 仪表板的方式设置索引的机会。
不知道有没有人遇到过类似的困境,可以分享一下他们的经验。
【问题讨论】:
-
我没有尝试过这个,我不知道它是否会起作用,所以把它当作它的价值......你可以尝试设置一个指向你想要的不同索引的别名将其作为单个索引查看,然后告诉 kibana 将其用作您的索引。
-
@Alcanzar,感谢您的提示。这很有趣,尽管我怀疑我们需要重塑正在聚合的数据,但我会研究一下。
-
只是想一想,你能不能把所有东西都摄取到同一个索引中,然后使用标签来查询单独的仪表板,而不是使用标签来聚合?
-
部落不就是为了这个吗?
标签: logging elasticsearch logstash kibana