栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 前沿技术 > 大数据 > 大数据系统

logstash同步数据到ES时间相差8小时问题

logstash同步数据到ES时间相差8小时问题

问题描述

使用 logstash 从 mysql 同步数据到 ES。发现同步到 ES 中的新闻数据时间字段比 mysql 中的时间少8小时。

问题原因

logstash 默认时区是0时区,而中国是东八区。

解决方法

方法1:在 logstash 同步代码中加入过滤器,对时间字段加8小时处理。logstash 同步代码中加入如下代码。(我这里的情况没有得到解决)

filter{
    ruby 
    { 
        code => "event.set('time', event.get('time').time.localtime + 8*60*60)" 
    }
}

其中【time】就是 sql 语句查询出来的字段名称,自己根据实际情况修改。

方法2:在 logstash 配置 sql 语句中,将时间字段的结果加8小时(我这里解决)

SELECt `id`,`classify`,`title`,`title_href`,DATE_ADD(`time`, INTERVAL 8 HOUR) AS `time` FROM  news
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/706401.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号