Logstash:自定义时间戳有 1 小时的差异

Logstash: 1-hour difference in custom timestamp

我在 Logstash 中使用自定义时间戳字段(我的日志文件中有一个而不是 Logstash 的 @timestamp 字段),虽然这个时间戳是在 Kibana 中创建和使用的,但似乎总是有一个 1 - 与我正在获取的实际时间戳的小时差异。

例如,这是来自我的结果来源的实际数据:

message: 2015-02-02 08:00:36,390 INFO [main] [...]

logtimestamp: "2015-02-02T07:00:36.390Z"

我尝试删除和更改 localetimezone date 字段但没有成功。

filter {
  grok {
    patterns_dir => "../patterns"
    match => [ "message", "%{LOGTIMESTAMP:logtimestamp}" ]
    tag_on_failure => [ ]
  }
  date {
    locale => "en"
    timezone => "Europe/Paris"
    match => [ "logtimestamp", "yyyy-MM-dd HH:mm:ss,SSS" ]
    target => "logtimestamp"
  }
}

感谢任何帮助。

时间戳以 UTC 格式存储在 Kibana 中,与您在 timezone 过滤器中提供的内容无关。此时区标识 ,而不是目标时区。

因此,您的结果出现在 Kibana 中时可能会有 1 小时的时差。这是因为在大多数日子里,巴黎比 UTC 早一小时。所以,这种行为是完全有意的。

有一个允许在本地时间显示@timestamp 的问题:https://github.com/elasticsearch/kibana/issues/95,该问题不久前已关闭并标记为已实现。它在 Kibana 的用户设置中。

在 logstash.conf

关注下一个订单
date {
    match => [ "my_date" , "ISO8601" ]
    timezone => "America/Mexico_City"
    target => "my_date"
}

收件人:hec0160