logstash用jdbc插件将数据库内容导入elasticsearch时间字段相差5小时

logstash将mysql的数据导入elasticsearch之后发现时间字段的相差5个小时

解决办法:

在数据库连接配置后面加上?serverTimezone=UCT这个就OK了

logstash @timstamp时间与当前时间相差8小时

因为@timestamp时间取的是当前UTC的时间,所以会与当前北京时间差8个小时

如果想让@timestamp时间变成当前时间,只需在filter中加上如下内容即可

  filter {
    ruby {
      code => "event.set('timestamp', event.get('@timestamp').time.localtime + 8*60*60)"
    }
    ruby {
      code => "event.set('@timestamp',event.get('timestamp'))"
    }
    mutate {
      remove_field => ["timestamp"]
    }
   }

路漫漫其修远兮,吾将上下而求索
原文地址:https://www.cnblogs.com/zhangchu/p/11174380.html