在kibana 4中通过查询运行一个简单的sql组

时间:2014-12-14 07:13:14

标签: elasticsearch kibana

我想在kibana 4“Discover”页面中通过查询运行一个简单的sql组。 弹性搜索索引中的每条记录都代表一个日志,有3列:process_id (not unique value), log_time, log_message

示例:

process_id log_time log_message

---------------- -------------------- ----------- ---------

1 2014/12/11 01:00 msg1

1 2014/12/11 01:10 msg2

1 2014/12/11 01:20 msg3

2 2014/12/11 11:00 msg4

2 2014/12/11 11:10 msg5


我想在kibana中生成一个表格,如下所示:

process_id first log_time last log_time

---------------- ------------------------ ------- -------------

1 2014/12/11 01:00 2014/12/11 01:20

2 2014/12/11 11:00 2014/12/11 11:10


在sql中查询很简单: select process_id,max(log_time),min(log_time) 来自logs_table group by process_id

如何在Kibana中运行此查询?是否可以在“发现”页面中运行查询,还是应该创建面板(可视化页面)?

感谢。

1 个答案:

答案 0 :(得分:8)

我正在使用Kibana 4.3,但这可以在任何版本的Kibana上使用。您需要创建数据表类型的可视化面板。

在此之前,您需要确保已为索引创建索引模式,例如此索引模式,并将log_time日期字段作为索引的时间戳。

enter image description here

然后您可以创建数据表可视化,它必须如下所示,即terms字段上的拆分行process_id聚合,然后是两个指标聚合(一个min和一个max日期字段

上的log_time}

enter image description here

最后,您的结果将如预期般显示:

enter image description here