我正在尝试找到一种方法,可以在logstash中向消息的开头添加新字段。
背景:我正在以JSON格式提取数据,并使用mutate.add_field插件将新字段添加到消息中。
但是,我似乎找不到一种方法来定义此新字段的位置。然后,该消息将作为字符串输出到文件中。从这里开始,还有其他过程可以选择此文件并应用正则表达式来提取所需的信息。为了简化正则表达式模式,我希望将关键字段放在消息的开头。
答案 0 :(得分:0)
您将需要按照所需顺序添加新字段,并删除其他字段。
例如,如果您的文档具有字段fieldA
和fieldB
,并且在管道中添加了要放在字段otherFieldC
和otherFieldD
前面的字段您的消息,您应该执行以下操作:
mutate {
add_field => {
"all_fields" => "%{otherFieldC} %{otherFieldD} %{fieldA} %{fieldB}"
}
remove_field => ["fieldA","fieldB","otherFieldC","otherFieldD"]
}
您的输出将是一个唯一字段,其中包含原始字段的信息以及您在管道中添加的信息。