如何使用Logstash的JSON过滤器插件

时间:2016-07-06 17:12:57

标签: json filter logstash elastic-stack

我已在他们的网站(documentation)上阅读了此文档,我仍然在努力了解如何使用此插件。我的目标是获取一个JSON文件并删除除JSON日志周围的几个特定字段之外的所有内容。 Add_field过滤器是否只对传递的字段进行传递?如果是这样,我将如何指定要传递的内容?

1 个答案:

答案 0 :(得分:1)

JSON过滤器用于在字段中扩展json。要将JSON文件读入logstash,您可能希望将json codecfile input一起使用,有点像这样:

file {
    path => "/path/to/file"
    codec => "json"
}

这会将json文件作为一个事件或

读入logstash
  

如果正在发送的数据是一个JSON数组,则会创建多个事件(每个元素一个)。

然后您可以使用mutate filter删除您不想要的字段。

mutate {
  remove_field => [ "uneeded-field", "my_extraneous_field" ]
}

您还可以考虑使用社区prune filter,它可以删除除白名单之外的所有内容。