Flink Logger nullPointException



我想用 Flink 代码编写log。因此,我在conf/log4j.properties中添加了这些行:

log4j.logger.myLogger=DEBUG, FILE
log4j.appender.FILE=org.apache.log4j.DailyRollingFileAppender
log4j.appender.FILE.File=myLog.out
log4j.appender.FILE.ImmediateFlush=true
log4j.appender.FILE.Threshold=debug
log4j.appender.FILE.Append=true
log4j.appender.FILE.DatePattern='.' yyyy-MM-dd-HH-mm
log4j.appender.FILE.layout=org.apache.log4j.PatternLayout
log4j.appender.myLogger.layout.conversionPattern=%d %-5p %c - %m%n

然后,我在映射类中获取记录器实例,如下所示:

private transient Logger logger = LoggerFactory.getLogger("FILE");

private transient Logger logger = LoggerFactory.getLogger(MapClass.class);

但是,当我使用记录器实例时,我得到了nullPointException

你能指导我什么是错的吗?

提前谢谢你。

您的记录器被标记为暂时性,因此在序列化后它是空的。

你要么必须在 RichMapFunction 的 open(( 方法中初始化它,要么只是让它成为静态的。

相关内容

  • 没有找到相关文章

最新更新