如何使用logstash将数组元素转换为小写

时间:2019-09-06 11:54:08

标签: elasticsearch logstash

我的Elasticsearch文档中有一个数组字段。

Array = ["German", "Spanish" , "English"]

我想将其转换为以下格式

Array = ["greman", "spanish", "english" ]

使用Logstash重新编制索引时,如何将数组内容转换为小写?

预先感谢

1 个答案:

答案 0 :(得分:1)

如果要在Logstash中执行此操作,可以利用mutate / lowercase filter

filter {
   ...

   mutate {
        lowercase => [ "Array" ]
   }

   ...
}

您还可以在Elasticsearch中使用ingest pipeline进行此操作:

PUT _ingest/pipeline/lowercase-pipeline
{
  "description": "Bla bla",
  "processors": [
    {
      "lowercase": {
        "field": "Array"
      }
    }
  ]
}

然后在Logstash配置中,确保参数化elasticsearch输出以使用该管道

output {
  elasticsearch {
    ...
    pipeline => "lowercase-pipeline"
    ...
  }
}