elasticsearch.exceptions.RequestError:TransportError(400,'parsing_exception','[bool]格式错误的查询,预期[END_OBJECT]但找到[FIELD_NAME]')
我认为问题可能是由于数据的结构, geo_times 对象是多个geo_times对象的数组。我无法弄清楚查询的正确语法。我已经搜索了几个小时的错误消息,但无法找到适合我特定问题的解决方案。我究竟做错了什么?提前感谢任何输入!
"geo_times" : [
{
"node_type" : "unattributed",
"node_name" : "IP",
"datetime" : "2017-08-03 18:37:12.275643",
"relative_time" : "0.268319000"
},
{
"node_type" : "unattributed",
"node_name" : "PPI Gps",
"datetime" : "2017-08-03 23:37:30.000000",
"lat" : "39.2865002",
"lon" : "-76.6131298",
"alt" : "12.529"
},
{
"node_type" : "unattributed",
"node_name" : "IP",
"datetime" : "2017-08-03 18:37:29.514747",
"relative_time" : "17.507423000"
},
{
"node_type" : "unattributed",
"node_name" : "PPI Gps",
"datetime" : "2017-08-03 23:37:47.000000",
"lat" : "39.2865282",
"lon" : "-76.612652",
"alt" : "9.1669"
}]
'query': {
'bool': {
'must': [{
'bool': {
'should': [{
'nested': {
'path': 'first_seen_geo_times',
'query': {
'range': {
'first_seen_geo_times.datetime': {
'gte': '2018-04-04',
'lte': '2018-05-04',
'format': 'yyyy-MM-dd||yyyy-MM-dd'
}
}
}
}
}, {
'nested': {
'path': 'last_seen_geo_times',
'query': {
'range': {
'last_seen_geo_times.datetime': {
'gte': '2018-04-04',
'lte': '2018-05-04',
'format': 'yyyy-MM-dd||yyyy-MM-dd'
}
}
}
}
}]
}
}]
},
'filter': {
'geo_bounding_box': {
'geo_times': {
'top_left': {
'lat': 53.69004893827236,
'lon': -57.527246475219734
},
'bottom_right': {
'lat': 30.417758111972528,
'lon': -113.23582649230958
}
}
}
}
}