使用日志包在Databricks Repos中编写自定义日志文件



我想捕获自定义指标作为笔记本运行在Databricks。我想使用日志记录包将这些写入文件。下面的代码似乎运行良好,但它从未写入文件。如何在Databricks运行时9.1中实现这一点?

还请注意,我正在运行这是Repos,所以我必须显式地将它写入一个位置。此外,当从我的工作空间运行时,这段代码运行得非常好。

logger = logging.getLogger('server_logger')
logger.setLevel(logging.INFO)
fh = logging.FileHandler('/dbfs/tmp/my_log.log')
fh.setLevel(logging.INFO)
formatter = logging.Formatter('%(asctime)s - %(levelname)s - %(message)s', datefmt='%Y-%m-%d %H:%M:%S')
fh.setFormatter(formatter)
logger.addHandler(fh)
logger.warning(f'starting to log the process')

可能/dbfs/tmp目录不存在,或者您没有对它的写访问权限。将日志文件名更改为mylog.log,它按预期工作:

~/SO-logging-misc$ python so_74519222.py
~/SO-logging-misc$ more my_log.log 
2022-11-21 14:33:22 - WARNING - starting to log the process

相关内容

  • 没有找到相关文章

最新更新