我有以下格式的数据:
{_source:"@fields": {
"code": 200,
"relativeCreated": 5969784.005880356,
"process": 16,
"module": "run",
"funcName": "main",
"threadName": "MainThread",
"filename": "run.py",
"levelno": 20,
"processName": "MainProcess",
"lineno": 210,
"node": "4",
"thread": 19255376,
"package": 977,
}
}
我想做的是制作一个过滤器,只获取包为977的项目。正在尝试执行以下操作search.filter("term", **{'@fields.package': 937})
但它似乎没有过滤任何东西。
答案 0 :(得分:0)
如果 @fields 中的字段包嵌套,那么您可能必须使用嵌套过滤器,检查映射并确认字段类型,对于嵌套过滤器,您可以以这种方式实现它:
search.filter("nested", path = '@fields' filter=F('term', '@fields.package': 937))