将JSON文件解析为logstash

时间:2015-11-23 10:36:39

标签: json elasticsearch logstash kibana logstash-grok

您好我正在尝试使用logstash将带有多个对象的json文件发送到elasticsearch,以便我可以使用kibana显示数据。我已经对此进行了广泛的研究,并且根本无法理解如何使数据格式正确以便在kibana中使用。

我尝试使用不同的过滤器,例如:json,date和grok

问题可能就是我如何使用这些过滤器,因为我无法理解它的设置一切顺利。

以下是输入json文件的示例行:

{"time":"2015-09-20;12:13:24","bug_code":"tr","stacktrace":"543534"},

我想使用这种格式在kibana中显示数据并根据“时间”对许多对象进行排序

以下是我当前的过滤器部分:

filter {
    date {
        match => ["time", "YYYY-MM-dd;HH:mm:ss Z" ]
        timezone => "America/New_York"
        locale => "en"
        target => "@timestamp"
    }
    grok {
        match => ["time", "%{TIMESTAMP_ISO8601:timestamp}"]
    }
}

此时我知道grok是错的,因为我得到了“_grokparsefailure” 但是我怎样才能找出使用grok的正确方法,或者是否有一种简单的方法可以使用给定的时间戳对数据进行排序,而不是通过发送数据时给出的处理时间戳。

这是输出当前显示的内容:

"message" => "{\"time\":\"2015-09-20;12:13:24\",\"bug_code\":\"tr\",\"stacktrace\":\"543534\"},\r",
"@version" => "1",
"@timestamp" => "2015-11-23T09:54:50:274Z",
"host" => "<my_computer>",
"path" => "<path_to_.json>",
"type" => "json",
"tags" => [
[0] "_grokparsefailure"

非常感谢任何建议

0 个答案:

没有答案