我希望能够结合Kibana Terms Graph 的功能(能够根据特定属性的值的唯一性创建存储桶)和 Histogram Graph (根据查询将数据分离到存储桶中,然后根据时间说明日期) .
总的来说,我想创建一个直方图,但我只想根据一个查询的结果创建直方图,而不是像Kibana demo app中那样进行多次查询 . 相反,我希望每个特定字段的唯一值动态创建每个存储桶 . 例如,考虑我的查询返回的以下数据:
{"myValueType": "New York"}
{"myValueType": "New York"}
{"myValueType": "New York"}
{"myValueType": "San Francisco"}
{"myValueType": "San Francisco"}
还假设每个记录都有一个 timestamp
字段,用于按日期分隔直方图数据 . 对于该特定日期,我希望将数据作为3的计数传送到 New York
桶中,并将数量2传送到 San Francisco
桶中 . 但是,我只能为我的一个链接查询显示5的计数 . 当我配置直方图时,我能够指定一个用于我的时间戳的字段,但不能从中创建存储桶 . 我可以've sent a field to compute a total/min/max/mean, but this field would'必须是数字,所以这也不是解决方案 .
如果我使用术语图来创建饼图或条形图,我确实能够根据我指定字段的唯一值(在本例中为“myValueType”)将我的数据分成桶,但这总计有史以来的数据,而不是按时间戳分割数据 . 虽然这是一个很好的信息,但它并不理想,因为我无法检测数据的趋势 .
我正在寻找一个可以执行以下操作之一的解决方案:
-
让我在Kibana仪表板中动态创建查询,在直方图中创建"buckets"
-
允许我运行一个ElasticSearch Terms Aggregation以基于"myValueType"将我的数据分解为桶并将这些结果集成到我的直方图中
-
自定义仪表板的JSON,但这对我来说不太可能
-
创建我自己的自定义面板,但这不可取
-
在Kibana中链接Kibana "TopN"查询 . 实际上,这已被证明是我的问题的解决办法,因为TopN查询从指定的fieldName动态地为每个唯一值/术语创建一个查询 . 但问题是,我只能将一种颜色链接到此TopN查询,并且每个唯一术语将放置在使用不同颜色阴影的存储桶中 . 理想情况下,直方图中的每个桶都会有一个完全不同的颜色 . 想象一下,随着桶数量的增加,区分独特术语是多么困难 .
-
如果所有其他方法都失败了,我会从搜索字段中为每个唯一值创建一个查询 . 这将允许我每个桶有一个唯一的颜色,但随着"myValueType"字段中唯一术语的数量发生变化,我需要继续添加/删除Kibana中的查询,这可能会非常混乱 .
我相信我在这里失踪了 . 请帮帮我 . 非常感谢 .
一个高度相关的SOF问题:Is it Possible to Use Histogram Facet or Its Curl Response in Kibana
2 回答
这将是一个很棒的功能 . 看起来它将在Kibana4中得到支持,但似乎没有比那更多的信息 .
供参考:https://github.com/elasticsearch/kibana/issues/1249
也许有点晚,但实际上可能在最新的BETA版本中 .
kibana 4 beta 3 installation download