设置参数 `node.name` 可以自定义 Elasticsearch 节点的名字。 此条 Tips 由 medcl 贡献。

对数组进行统计排序

Elasticsearch | 作者 richardhej | 发布于2017年10月20日 | 阅读数:2953

 
{
"_index": "log",
"_type": "parse_log",
"_id": "AV80ztgqx-sSsZV5yS9j",
"_version": 2,
"_score": 1,
"_source": {
"ip": "1.1.1.1",
"tag": "主任",
"location": "北京市,北京市,",
"url": [{
"web": "/412/2014/01/16/2@13030.htm",
"access_time": "2017-08-23T03:24:09",
"during": "99999999",
"url_id": "1"
},
{
"web": "/412/2016/06/07/110@24757.htm",
"during": "888888",
"url_id": "2",
"access_time": "2017-09-11T03:47:03"
}],
"@timestamp": "2017-10-19 21:13:17"
}
}
我想对查到ip 是1.1.1.1 的记录中的所有url. web 字段进行统计,看哪个web的值最多并从多到少的展现出来。url是 nested的。
 
我的查询如下。
{
"query": {
"bool": {
"must": [{
"match_phrase": {
"ip": "1.1.11.1"
}
},
{
"match_phrase": {
"tag": "主任"
}
},
{
"match_phrase": {
"location": "北京市,北京市,"
}
}]
}
},
"aggs": {
"url": {
"nested": {
"path": "url"
},
"aggs": {
"group_web": {
"histogram": {
"field": "url.web"
}
}
}
}
}
}
报错。url.web 的fielddata text 是disable 。将web 的fielddata enalbe 后。
继续报此错误。。。
已邀请:

要回复问题请先登录注册