我在Logstash中使用了一个自定义时间戳字段(在我的日志文件中有一个字段,而不是Logstash的@timestamp
字段),尽管这个时间戳是在Kibana中创建和使用的,但似乎与我获取的实际时间戳总是有1小时的差异。
例如,以下是来自我的结果来源:的实际数据
消息:2015-02-02 08:00:36390信息[main][…]
日志时间戳:"2015-02-02T07:00:36.390Z";
我尝试删除和更改locale
和timezone
日期字段,但没有成功。
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
过滤器中给出的内容无关。此时区标识源,而不是目标时区。
因此,您的结果可能会以1小时的时间差出现在Kibana。这是因为巴黎在大多数日子里比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