我正在使用无痛和ctx API调用将字符串附加到数组。 对于简单的字符串,它可以正常工作。
我加载的数据是: 申请时间:26 / Mar / 2019:09:25:47 +0100,Cookie:sessionid = 760ddsaa323
POST test/doc/948650eff51e70ecf0e7c38d4afa442d/_update
{
"script" : {
"source": "if(ctx._source.session_cookie_log != null) {ctx._source.session_cookie_log.add(params.newsupp)}",
"params": {
"newsupp": "Request time: 26/Mar/2019:09:25:47 +0100, Cookie: sessionid=760ddsaa323"
}
}
}
但是,我的要求发生了变化,我必须将JSON对象而不是字符串加载到数组中。
我现在尝试加载的对象是:
{
"Request time": "26/Mar/2019:09:25:47 +0100",
"Cookie": "sessionid=760ddsaa323"
}
如何调整我的API调用以加载JSON对象而不是字符串?
答案 0 :(得分:-1)
将字段(在您的情况下为session_cookie_log
)的映射更改为嵌套。
参考:https://www.elastic.co/guide/en/elasticsearch/reference/current/nested.html