action
часть упругого наблюдателя выглядит следующим образом -
"actions": {
"index_payload": {
"transform": {
"script": "ctx.payload.aggregations.time_interval.buckets.0"
},
"index": {
"index": "hourly-data",
"doc_type": "meters_hourly_data"
}
}
}
и вывод -
"payload" : {
"key_as_string" : "2019-03-11T00:00:00.000-05:00",
"doc_count" : 1440,
"http_server" : {
"doc_count_error_upper_bound" : 0,
"sum_other_doc_count" : 0,
"buckets" : [
{
"1" : {
"value" : 0.16463961166666666
},
"doc_count" : 960,
"2" : {
"value" : 0.0
},
"3" : {
"value" : 3.2266329166666665
},
"4" : {
"doc_count_error_upper_bound" : 0,
"sum_other_doc_count" : 0,
Я хочу получить ключ непосредственных объектов и значение key_as_string
. До сих пор с ctx.payload.aggregations.time_interval.buckets.0
я могу достичь до payload
. Когда я пытался изменить скрипт на ctx.payload.aggregations.time_interval.buckets.0.key_as_string
или ctx.payload.aggregations.time_interval.buckets.0.key_as_string.value
, я получаю сообщение об ошибке.
При использовании следующего скрипта -
"script": "['ctx.payload.aggregations.time_interval.buckets.0'].value"
Я получаю следующую ошибку -
> "script":
> "(int)(['ctx.payload.aggregations.time_interval.buckets.0'].value)",
> "lang": "painless",
> "caused_by": {
> "type": "class_cast_exception",
> "reason": "Cannot cast from [java.lang.String] to [int]."