将现有集合嵌套在对象内

时间:2019-01-23 15:55:42

标签: elasticsearch logstash kibana

我正在尝试为logastash配置文件正确配置过滤器突变,但失败了。

  1. 我有一个来自SQL的标签数组,像这样的字符串:

    "lunch | mellanmål | middag"

  2. 我将mutate配置为将其拆分为如下所示的集合:

    mutate { split => ["meal_type_tags", " | "] }

  3. 我正在获取具有预期集合的索引:

    "meal_type_tags" : ["lunch", "mellanmål","middag"]

  4. 我正在尝试通过添加另一个突变来重命名以将其嵌套在新的tags对象中:

    mutate { rename => "meal_type_tags" => "[tags][meal_type]"}

我的预期索引是:

"tags": { 
        "meal_type" : 
                        [
                            "lunch", 
                            "mellanmål"
                            "middag"
                        ] 
    }

...但是我却得到了:

"tags" : [
            [
              "meal_type",
              [
                "middag",
                "lunch"
              ]
            ]
          ]

1 个答案:

答案 0 :(得分:0)

我不知道为什么,但是如果我尝试重命名为tags,它将无法正常工作。我更改为recipe_tags,并且按预期运行。也许@baudsp知道更多,因为该解决方案受到他的评论的启发。