logstash获取日志,时间戳相差8小时


背景:
logstash版本:2.4.9
 
 
由于logstash在获取时区的时候,默认获取的是UTC默认时间,同时elasticsearch在创建索引的时候,统一使用UTC时间,因此实际上在创建索引的时候,会将今天实际时间的前8个小时的日志文件输出至昨天的索引中,因为中国使用的为东8时区,源数据和实际创建的索引数据会相差8个小时。
对于页面查看,ELK的解决方案是在kibana上,读取浏览器的当前时区,然后在页面上进行转换,显示时间内容。
 
1、修改string_interpolation.rb文件
vim /data/logstash/vendor/bundle/jruby/1.9/gems/logstash-core-event-2.4.1-java/lib/logstash/string_interpolation.rb
将.withZone(org.joda.time.DateTimeZone::UTC)修改为.withZone(org.joda.time.DateTimeZone.getDefault())
 
2、修改timestamp的配置文件
vim  /data/logstash/vendor/bundle/jruby/1.9/gems/logstash-core-event-2.4.1-java/lib/logstash/timestamp.rb 将@time = time.utc修改为@time  = time

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM