我正在使用kedro与vscode的databricks扩展一起访问Azure上的databricks服务器。一切都工作得很好,但在本地执行文件时,我没有看到任何输出。我收到的唯一输出是:
31/03/2023, 15:09:32 - Synchronizing code to /Repos/<>@<>.ide ...
31/03/2023, 15:09:32 - Running kedro-hello-world.py ...
[03/31/23 13:09:37] INFO Kedro project dp-kedro session.py:355
31/03/2023, 15:09:43 - Done (took 13914ms)
如果我查看日志,我看到以下内容:
{
"level": "debug",
"logger": "SDK",
"loggingFunction": "CommandExecutionService.commandStatus",
"message": "cluster",
"operationId": "id",
"operationName": "CommandExecutionService.commandStatus",
"request": {"method": "GET"},
"response": {
"id": "id",
"results": {
"data": "[03/31/23 12:41:43] INFO Kedro project dp-kedro session.py:355",
"resultType": "text",
},
"status": "Finished",
},
"timestamp": 1680266509470,
}
所以似乎其余的消息不会返回到vscode?直接在databricks上执行文件是有效的,我可以看到Kedro的所有输出。
所以Kedro中的日志配置是在[logging]中完成的。yml][1]文件,指向Python的日志记录。dictConfig方法1:1我还没有机会使用新的数据库扩展自己,也许这里的详细模式是有用的?
在下面的线程中发现-
我终于找到了,因为我正在通过vscode ->砖→Kedro,日志记录(使用rich)是混乱的,从配置中删除rich,用控制台工作代替它…因此,查看日志记录的初始提示是有效的:)谢谢
请将logging.yml
设置为普通控制台日志记录,并删除RichHandler
root:
- handlers: [rich, info_file_handler, error_file_handler]
+ handlers: [console, info_file_handler, error_file_handler]