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

    Flink安装在CentOS7上,默认时间是UTC时间,查看Flink日志,发现输出时间比当前时间晚8个小时。

    通过如下命令,调整成北京时间

cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime

   但是查看Flink输出的日志时间格式,输出时间仍然比当前时间晚8个小时!

   经过研究,以下操作,可以解决日志输出时间比当前时间晚8小时的问题。

一、jobmanager输出日志时间格式修改

   修改$FLINK_HOME/bin/jobmanager.sh中JAVA OPTS环境变量:

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

改为:

# Add JobManager-specific JVM options
export FLINK_ENV_JAVA_OPTS="${FLINK_ENV_JAVA_OPTS} ${FLINK_ENV_JAVA_OPTS_JM} -Duser.timezone=GMT+08"

二、taskmanager输出日志时间格式修改

 修改$FLINK_HOME/bin/taskmanager.sh中JAVA OPTS环境变量:

# Add TaskManager-specific JVM options

export FLINK_ENV_JAVA_OPTS="${FLINK_ENV_JAVA_OPTS} ${FLINK_ENV_JAVA_OPTS_TM}"

改为:

# Add TaskManager-specific JVM options

export FLINK_ENV_JAVA_OPTS="${FLINK_ENV_JAVA_OPTS} ${FLINK_ENV_JAVA_OPTS_TM} -Duser.timezone=GMT+08"

三、修改完上面的Shell脚本后,分别拷贝到其他节点, 重启Flink集群

原文地址:https://www.cnblogs.com/liugh/p/8404706.html