我正在尝试提取与elasticsearch中的函数结果相对应的字段。例如给我一个具有最大时间戳记录的字段'elaspsedTime'。理想情况下,我希望将此作为“aggs”条款
的一部分...
"aggs": {
"minStart": {
"min": {
"field": "@timestamp"
}
},
"maxStop": {
"max": {
"field": "@timestamp"
}
},
"elapsedTimeForMax" : {
// field 'elaspedTime' corresponding the 'max' field
}
...
}
这可能吗?
答案 0 :(得分:2)
执行此操作的一种方法是使用top_hits
聚合,如下所示:
"aggs": {
"minStart": {
"min": {
"field": "@timestamp"
}
},
"maxStop": {
"max": {
"field": "@timestamp"
}
},
"elapsedTimeForMax" : {
"top_hits": {
"sort": {"@timestamp": "desc"},
"size": 1,
"_source": ["elapsedTime"]
}
}
...
}