Я хочу использовать путь родного брата родителя в bucket-script, DSL вот так:
{
"size": 0,
"aggs": {
"car_type": {
"terms": {
"field": "screenName",
"size": 10
},
"aggs": {
"active_num": {
"terms": {
"field": "activeNum",
"size": 10
},
"aggs": {
"active_count": {
"value_count": {
"field": "activeNum"
}
},
"result" : {
"bucket_script": {
"buckets_path": {
"count1" : "car_type>all_count",
"count2" : "active_count"
},
"script": "params.count2/params.count1"
}
}
}
},
"all_count": {
"value_count": {
"field": "activeNum"
}
}
}
}
}
}
Я хочу использовать all_count
в result
, но es выдаст исключение:
Агрегация не найдена для пути [car_type> all_count]
Затем я меняю место для использования bucket_script, например:
{
"size": 0,
"aggs": {
"car_type": {
"terms": {
"field": "screenName",
"size": 10
},
"aggs": {
"active_num": {
"terms": {
"field": "activeNum",
"size": 10
},
"aggs": {
"active_count": {
"value_count": {
"field": "activeNum"
}
}
}
},
"all_count": {
"value_count": {
"field": "activeNum"
}
},
"result" : {
"bucket_script": {
"buckets_path": {
"count1" : "all_count",
"count2" : "active_num>active_count"
},
"script": "params.count2/params.count1"
}
}
}
}
}
}
, ноЯ получаю еще одно исключение:
buckets_path должен ссылаться либо на числовое значение, либо на агрегирование числовой метрики одного значения, получено: java.lang.Object []
Я нашелна официальной странице сайта, но я ничего не получаю.Как я могу использовать этот bucket_path?