解决Flink输出日志中时间比当前时间晚8个小时的问题

解决Flink输出日志中时间比当前时间晚8个小时的问题

在flink standalone集群上,发现log输出时间比当前时间晚8个小时,我的集群系统时间是CTM+8时区的。一开始发现时间不对,还不太上心,后面发现业务在本地跑起来是正常的,提交到集群跑不输出结果,这下就尴尬了。经过一系列的排查。发现ProcessTime时间不对。后面发现flink时间默认为UTC时间(真是个坑啊,心中默念,心平气和)。顺便写个博客记录下。

那么解决这个问题呢,需要修改脚本jobmanager和taskmanager当中的FLINK_ENV_JAVA_OPTS参数。如下:

1. jobmanager.sh脚本的修改

# Add JobManager-specific JVM options
export FLINK_ENV_JAVA_OPTS="${FLINK_ENV_JAVA_OPTS} ${FLINK_ENV_JAVA_OPTS_JM}"


#将上面的内容改为 加上 -Duser.timezone=GMT+08
export FLINK_ENV_JAVA_OPTS="${FLINK_ENV_JAVA_OPTS} ${FLINK_ENV_JAVA_OPTS_JM} -Duser.timezone=GMT+08"

2. taskmanager.sh脚本的修改

# Add TaskManager-specific JVM options
export FLINK_ENV_JAVA_OPTS="${FLINK_ENV_JAVA_OPTS} ${FLINK_ENV_JAVA_OPTS_TM}"


#将上面的内容改为 加上 -Duser.timezone=GMT+08
export FLINK_ENV_JAVA_OPTS="${FLINK_ENV_JAVA_OPTS} ${FLINK_ENV_JAVA_OPTS_TM} -Duser.timezone=GMT+08"

然后重启flink standalone集群就好,在重新提交job就好。

  • 3
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 5
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值