如何在Kibana中创建HTTP代码的堆叠图?

时间:2014-02-26 21:38:31

标签: elasticsearch kibana

我将HTTP日志发送到Kibana,响应代码(200,401,500等)作为字段正确解析出来。我想要一个时间序列图表,每个代码的计数显示为每个区间中以不同颜色堆叠在一起的条形。例如,这应该有助于查看是否突然发生了500多个错误。

我很难弄清楚如何在Kibana中创建这样的图表。这可能吗?

3 个答案:

答案 0 :(得分:60)

这是Kibana 4/5答案,如果您使用的是Kibana 3,请查看this answer

Kibana 4/5

在撰写本文时,Kibana 4唯一可用的版本是 beta1 ,因此这些屏幕截图在未来版本的Kibana中可能会有所不同。如果应用相关更改,我会尝试更新它们。

Kibana 4(和5)提供了以前版本没有的一些功能。例如,现在我们可以使用自1.0版以来ES中可用的聚合构建面板。

要构建HTTP代码(或其他字段)的堆叠图,您必须:

  • 单击 Visualize 选项卡。此选项卡允许您构建可以在仪表板中放置的面板。

Visualize tab

  • 然后,您必须选择要创建可视化文件以进行新搜索(或使用现有搜索,如果您之前在 Discover 标签中播放过。您必须选择现有索引你以前配置过。

Create a visualization from a search

  • 选择索引后,必须选择所需的面板类型。在这种情况下,我们将选择垂直条形图

Type of chart selection

  • 接下来,我们将找到一个漂亮的页面,右侧部分有一个图形,一个面板有不同的选项。这个面板让我们定义一个查询来绘制我们的数据。基本上,我们想要在Y轴上绘制的是文档计数(默认情况下是选择的文档)。

Count of documents in the Y axis

  • 然后我们添加一个新聚合,首先我们想要按时分发文档的总数,然后我们想要用不同的现有代码分割这个总数。此外,第一个聚合将是每个时间戳,第二个聚合将是每个代码。您想在X轴上绘制时间戳(选择 X轴),并且您希望将条形分割为不同的代码(选择分割条)。您的最终配置应该是这样的:

Final configuration

  • 申请后,最终结果应该是这样的。

Final plot

  • 如果您想要在更长或更短的时间内聚合数据,您可以使用间隔播放(有几个选项,如每小时,每天,每月......)。如果您想查看更多数据,请记得更改顶部的时间跨度,因为此图表受该时间戳的限制。

答案 1 :(得分:32)

这是Kibana 3的答案,如果您使用的是Kibana 4或5,请查看this answer

Kibana 3

如果我不误解你的问题,你需要的是:

  • 定义您的查询。如果您想要每个响应类型一个条,则需要为每个响应定义一个查询。您必须定义查询field: <value>以过滤确切的值。例如,您可以查询:

Defining the queries

  • 创建直方图。
  • 配置直方图:
    • 查询:您可以选择所有查询,或者只选择您首先编写的查询。

Queries

  • 面板:你可以输入这样的配置。您可以设置自定义间隔以对日志进行分组,将值堆叠为单独的(更有意义的是,我认为,当您将鼠标放在图形上时将显示正确的值而不是堆叠的值...)。你可以尝试一下这些选项。

Panels

最终结果将是:

Final result

答案 2 :(得分:0)

Kibana 3

对于每种响应类型的栏,您希望为每个响应编写一个查询。您尚未定义查询字段:用于过滤。例如,您可以有如下查询:

Filtering

然后你会得到这样的结果。

Result image