Logstash 给 Elasticsearch 吐数时的@timestamp问题处理

对@timestamp的8小时的问题的解释,请参考http://blog.csdn.net/shan1369678/article/details/51375537 ,解释的很详细。在这里结合我自己的项目,来谈对这个问题的理解。

对ES中的某条日志,有如下两个字段:
这里写图片描述

这里写图片描述

DATETIME 是日志生成的时间戳,我们并不清楚该日志的来源,故不能确定该日志是否是UTC还是UTC+8。但一般来说,很可能是UTC+8,即是东八区的时间。本例中,该日志的时间就是UTC+8时间。

然后在ES内部,无论是DATETIME还是@timestamp,都被当成了UTC时间。对于Kibana页面查看,ELK是先读取浏览器的当前时区,然后在页面上转换时间内容的显示。即要加8个小时。

第一步
Logstash 给 Elasticsearch 吐数时的@timestamp问题处理_第1张图片

第二步在kibana显示:
Logstash 给 Elasticsearch 吐数时的@timestamp问题处理_第2张图片

发现在kibana进行显示的时候,是要加8小时的。

总结:
1) 在Elasticsearch 内部,对时间类型字段,是统一采用 UTC 时间;
2) 对于Kibana页面查看,ELK是先读取浏览器的当前时区,然后在页面上转换时间内容的显示。即要加8个小时。

你可能感兴趣的:(elasticsearch)