【发布时间】:2015-04-23 23:37:19
【问题描述】:
我是弹性搜索的新手,花了很长时间试图解决以下问题。也许解决方案应该在文档中 - 但它不是:-(
我的服务器在多个时区运行。
日志文件被同步到具有不同时区的服务器中,但是很容易通过时区字段来知道原始时区,例如{"timezone": "UTC"} 或时间格式本身,例如{"@timestamp": "2015-02-20T12:11:56.789Z"}
我可以完全控制日志文件,并且可以在必要时调整它们。
使用 logstash 时 - 它会将时间格式更改为运行它的服务器的本地时间。例如"@timestamp" => "2015-02-21T22:26:24.920-08:00"
如何从源日志文件、日志存储和弹性搜索中获取始终如一的时区? (显然 - 在那之后我想在 Kibana 中拥有它)。我尝试了很多事情都没有成功。
提前致谢。
【问题讨论】:
-
您使用的是logstash
datefilter吗?如果是这样,您可以将时区明确设置为Etc/UTC。 -
还有this issue。
-
如果
@timestamp字段已经设置(通常由另一个 Logstash 实例),我很确定 Logstash 不会碰它。你能澄清一下这里到底发生了什么吗?你的配置是什么样的?理想情况下,原始日志文件应以 UTC 格式指定时间戳,或在您提供给日期过滤器的同一字符串中包含时间戳标识符。 -
感谢马特和马格努斯的想法。我都试过了,因为它们很有意义。
标签: elasticsearch timezone logstash kibana grok