将现有集合嵌套在对象中
Nesting existing collection inside object
我正在尝试为 logastash 配置文件正确配置过滤器变异,但我失败了。
我有一个来自 SQL 的标签数组,像这样的字符串:
"lunch | mellanmål | middag"
我配置 mutate
将其拆分成这样的集合:
mutate { split => ["meal_type_tags", " | "] }
我正在获取包含预期集合的索引:
"meal_type_tags" : ["lunch", "mellanmål","middag"]
我正在尝试重命名以通过添加另一个 mutate 将其嵌套在新的 tags
对象中:
mutate { rename => "meal_type_tags" => "[tags][meal_type]"}
我期望的指数是:
"tags": {
"meal_type" :
[
"lunch",
"mellanmål"
"middag"
]
}
...但我得到的是:
"tags" : [
[
"meal_type",
[
"middag",
"lunch"
]
]
]
我不知道为什么,但如果我尝试重命名为 tags
,它就是行不通。我更改为 recipe_tags
并且效果如我所料。也许@baudsp 知道更多,因为解决方案的灵感来自于他的评论。
我正在尝试为 logastash 配置文件正确配置过滤器变异,但我失败了。
我有一个来自 SQL 的标签数组,像这样的字符串:
"lunch | mellanmål | middag"
我配置
mutate
将其拆分成这样的集合:mutate { split => ["meal_type_tags", " | "] }
我正在获取包含预期集合的索引:
"meal_type_tags" : ["lunch", "mellanmål","middag"]
我正在尝试重命名以通过添加另一个 mutate 将其嵌套在新的
tags
对象中:mutate { rename => "meal_type_tags" => "[tags][meal_type]"}
我期望的指数是:
"tags": {
"meal_type" :
[
"lunch",
"mellanmål"
"middag"
]
}
...但我得到的是:
"tags" : [
[
"meal_type",
[
"middag",
"lunch"
]
]
]
我不知道为什么,但如果我尝试重命名为 tags
,它就是行不通。我更改为 recipe_tags
并且效果如我所料。也许@baudsp 知道更多,因为解决方案的灵感来自于他的评论。