【问题标题】:How do I group logs in Kibana/Logstash?如何在 Kibana/Logstash 中对日志进行分组?
【发布时间】:2018-11-29 17:48:38
【问题描述】:

我们有一个 ELK 设置,Logstash 正在从服务器上安装的 Filebeat 接收所有日志。因此,当我打开 Kibana 并要求提供索引时,我只为索引值添加了 *,然后转到 Discover 选项卡以检查日志,它会在单独的可扩展部分中显示日志的每一行。

我希望能够首先根据时间戳对日志进行分组,然后根据每个请求在我们的日志中生成的公共 ID 对日志进行分组,以便将其与其余部分区分开来。我们得到的日志示例:

DEBUG [2018-11-23 11:28:22,847][298b364850d8] Some information
INFO  [2018-11-23 11:27:33,152][298b364850d8] Some information
INFO  [2018-11-24 11:31:20,407][b66a88287eeb] Some information
DEBUG [2018-11-23 11:31:20,407][b66a88287eeb] Some information

我希望在同一下拉列表中查看请求 ID : 298b364850d8 的所有日志,因为它们是连续日志。然后它可以再次进入按请求 ID 分组的第二个下拉列表: b66a88287eeb 按时间戳顺序。

这是可能的,还是我对该工具的期望过高?

或者,如果有更好的日志分组策略,我非常乐意听取建议。

一位朋友告诉我,我可以在 logstash 中配置它以根据一些正则表达式 n 内容对日志进行分组,但我只是不知道在何处以及如何配置它以进行分组。

我对整个 ELK 堆栈完全陌生,无法回答我的问题,这些问题本质上可能非常初级。

【问题讨论】:

    标签: logstash kibana elastic-stack


    【解决方案1】:

    正如您所说,您的问题确实有点模糊和广泛。但是,我会尽力提供帮助:)

    1. 检查您在logstash output 中定义的索引。这是需要定义 Kibana 的索引 - 而不是 *。
    2. Create an Index Pattern to Connect to Elasticsearch。这将解析日志的字段,并允许您根据需要进行过滤。
    3. 建议使用 GUI 工具(如Cerebro)来更好地了解您的 ES 中发生了什么。它还可以帮助您更好地了解那里的索引。

    祝你好运

    【讨论】:

    • 非常感谢分享这些链接。让我检查一下。我知道我的要求充其量是含糊的,因为我以前在以前的公司中使用过 Splunk,但除此之外它只是在跟踪日志。而且我从来没有做过开发操作。有人告诉我,ELK 设置将为我提供一个很好的 UI 来搜索日志和设置警报等。因此,要求的模糊性,因为我仍在弄清楚如何最好地使用这个工具并进行设置,以便我们可以对其进行编程对我们有利。对此感到抱歉:)
    • 当然,没问题,我完全理解。刚才提到了,所以你知道我的回答很笼统,可能不是你需要的。
    • 对不起,我没有时间花在这上面。但是您共享的第二个链接是我之前已经尝试过的,但尚未对其进行广泛的试验。使用索引模式和分析工具,Cerebro 对我来说似乎很有趣。我会试一试。我将通过第一个链接,因为那是官方文档。我希望在周末这样做,然后回复。感谢您的帮助和指导以及回来查看:) 非常感谢!
    【解决方案2】:

    您可以使用@timeStamp 过滤器和搜索查询,如下面的示例图像来过滤您想要的。

    【讨论】:

      猜你喜欢
      • 2016-04-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-10-30
      • 2021-10-18
      • 1970-01-01
      • 2015-05-14
      • 1970-01-01
      相关资源
      最近更新 更多