flink shell启动警告No appenders could be found for logger解决方案

(Python3.6) appleyuchi@Desktop:~$ start-scala-shell.sh local
Starting Flink Shell:
log4j:WARN No appenders could be found for logger (org.apache.flink.configuration.GlobalConfiguration).
log4j:WARN Please initialize the log4j system properly.
log4j:WARN See http://logging.apache.org/log4j/1.2/faq.html#noconfig for more info.

钉钉群里面的负责人说法是一旦发布就不再fix了。。。。所以就跳过去了。

最后是根据参考链接[1]中的配置

以下步骤验证Flink最新版本到底修复这个warning没。(其实官方根本就没修复)

先操作1.10.1版本:
①$FLINK_HOME保留flink-conf.yaml,其余配置文件全部删除。
②删除$FLINK_HOME/bin下面的start-scala-shell.sh

借用最新版本的文件:
③git clone http://github.com/flink(这里是1.11版本)
④cd flink-dist/src/main/flink-bin/conf(这里是1.11版本)
⑤cp * $FLINK_HOME/conf(1.11版本的配置文件拷贝给1.10.1版本)
⑥cp flink-scala-shell/start-script/start-scala-shell.sh $FLINK_HOME/bin(1.11版本的启动脚本拷贝给1.10.1版本)
测试:
⑦$FLINK_HOME/bin/start-scala-shell.sh local(警告依旧)
log4j:WARN No appenders could be found for logger (org.apache.flink.configuration.GlobalConfiguration).
log4j:WARN Please initialize the log4j system properly.
log4j:WARN See http://logging.apache.org/log4j/1.2/faq.html#noconfig for more info.

解决方案:
在log4j.properties文件末尾加入以下几行
log4j.rootLogger=WARN, console
# Log all infos in the console
log4j.appender.console=org.apache.log4j.ConsoleAppender
log4j.appender.console.layout=org.apache.log4j.PatternLayout
log4j.appender.console.layout.ConversionPattern=%d{dd/MM/yyyy HH:mm:ss.SSS} %5p [%-10c] %m%n

扫描二维码关注公众号,回复: 11298586 查看本文章

然后重启

$FLINK_HOME/bin/start-scala-shell.sh local

警告消除。

阿里的人说:

这个修复方案是错的,凡是修复过的,他们都是不发布编译后的tgz的。

解决问题的思路总结:

上述流程的关键在于使用最新版的配置文件和启动文件,

然后对log4j.properties追加一些配置,警告就可以消失不见了。

另外注意:

这个报错是启动文件和配置文件共同导致的,只要有一处出现问题,就会有这个警告出现。

##################################################################################################

shell的session模式同样存在这个问题。

替换$FLINK_HOME/bin/yarn-session.sh为flink/flink-dist/src/main/flink-bin/yarn-bin/yarn-session.sh

log4j-session.properties下面加入:

log4j.rootLogger=WARN, console
# Log all infos in the console
log4j.appender.console=org.apache.log4j.ConsoleAppender
log4j.appender.console.layout=org.apache.log4j.PatternLayout
log4j.appender.console.layout.ConversionPattern=%d{dd/MM/yyyy HH:mm:ss.SSS} %5p [%-10c] %m%n
 

##################################################################################################

Reference:

[1]记录配置

[2]Logging configuration

猜你喜欢

转载自blog.csdn.net/appleyuchi/article/details/106728921
今日推荐