Flink Logger nullPointException - PullRequest
       6

Flink Logger nullPointException

0 голосов
/ 14 января 2020

Я хочу написать log в коде Flink. Итак, я добавляю эти строки в 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, когда использую экземпляр регистратора.

Не могли бы вы подсказать мне, что не так?

Заранее спасибо.

1 Ответ

2 голосов
/ 15 января 2020

Ваш регистратор помечен как временный, поэтому после сериализации он имеет значение null.

Вы должны либо инициализировать его в методе open () вашей RichMapFunction, либо просто сделать его статическим c.

...