0

我在 Windows 上使用 Logstash 1.4.2。

我正在从我的日志(字段'timestamp_file')中解析一个日期时间,并尝试将其值影响到我正在解析的时间戳字段@timestamp 示例:2015-03-09 00:35:11,073

    # format date
    date{
        match =>["timestamp_file","YYYY-MM-dd HH:mm:ss,SSS"]
        target => "@timestamp"
        }

但是在 Kibana 中,我在 @timestamp 字段中有不同的值(一小时间隔) kibana timestamp_file = 2015-03-12 15:34:30,580 @timestamp = 2015-03-12T15:34:30.580+01:00 中的示例

在映射中,ES 将我的字段 timestamp_file 视为字符串而不是日期。可能是因为这个。

欢迎任何帮助来解决这个问题。

4

1 回答 1

0

Kibana 将以 UTC 时间显示该值。因此,如果您想@timestamp在您的时区中显示该字段,例如"@timestamp" => "2015-03-09T04:24:29.718+01:00",您必须在过滤器中进行一些转换。

input {
    stdin {}
}

filter {
    ruby {
        code => "event['@timestamp'] = event['@timestamp'].localtime('+01:00')"
    }
}

output {
    stdout {
         codec => rubydebug
    }
}
于 2015-03-17T01:13:09.740 回答