如何从计划的笔记本登录到内核-pyspark-*.log


在我的

笔记本中,我设置了一个用于日志记录的实用程序,以便我可以调试 DSX 计划的笔记本:

# utility method for logging
log4jLogger = sc._jvm.org.apache.log4j
LOGGER = log4jLogger.LogManager.getLogger("CloudantRecommender")
def info(*args):
    # sends output to notebook
    print(args)
    # sends output to kernel log file
    LOGGER.info(args)

像这样使用它:

info("some log output")

如果我检查日志文件,我可以看到我的注销正在写入:

! grep 'CloudantRecommender' $HOME/logs/notebook/*pyspark* 
kernel-pyspark-20170105_164844.log:17/01/05 10:49:08 INFO CloudantRecommender: [Starting load from Cloudant: , 2017-01-05 10:49:08]
kernel-pyspark-20170105_164844.log:17/01/05 10:53:21 INFO CloudantRecommender: [Finished load from Cloudant: , 2017-01-05 10:53:21]

但是,当笔记本作为计划的作业日志运行时,输出似乎不会转到内核 pyspark-*.log 文件。

如何在 DSX 计划笔记本中写入日志输出以进行调试?

日志记录代码实际上工作正常。 问题是计划指向旧版本的笔记本,其中没有任何日志记录语句!

相关内容

  • 没有找到相关文章

最新更新