问题描述:
使用Kibana Dev Tools开发ES查询,Chrome浏览器中查询不起作用,返回Index的原始数据,但Postman,FireFox都可以得到正确的查询结果。
运行环境:
Chrome版本:68
Kibana 版本:5.6.12
原因:
Kibana Dev Tools会将带request body的Get请求会转换为Post请求,Bug详见 https://github.com/elastic/kibana/issues/11125
虽然ES也支持Post请求查询,但在Chrome中Post请求的查询参数会丢失,FireFox中正常。
查询语句:聚合品牌Brand得到出现次数最多的Top10
{
"size": 0,
"aggs": {
"vendor": {
"aggs": {
"vnd": {
"terms": {
"field": "normalizednames.brand.exact",
"size":10
}
}
},
"nested": {
"path": "normalizednames"
}
}
}
}
在Chrome, 查询如下,Post请求,并且查询参数丢失。
FireFox查询
解决方法:
使用Firefox或Postman开发ES查询。