需要在LogStash中将字符串转换为JSON

时间:2014-06-16 18:11:55

标签: json elasticsearch logstash

我有logstash以Json格式提取日志,该日志包含一个包含JSON的特定字段。 Logstash将JSON作为字符串处理该特定字段,因为引用了该值。我希望Logstash也将该字段的内容视为JSON,但无法弄清楚如何删除引号。

这是日志: {"时间":" 2014年6月16日""主机名":" FOOname""事件&#34 ;: "警告"," CustomField":" {"标题":"这是被视为字符串的数据",&# 34;用户":" FooUser"}"}

围绕" CustomField"的值的引号造成了这个问题。

由于

1 个答案:

答案 0 :(得分:2)

您当前的配置是什么以及您正在运行的Logstash版本是什么?

我认为以下方法可行:

filter {
  json {
    source => "CustomField"
    target => "CustomFieldParsed"
  }
}

http://logstash.net/docs/1.4.1/filters/json

如果你的JSON在Title字段中,那么

    source => "CustomField.Title"