如何在Microsoft Azure上的Python WebJob中打印到控制台?

时间:2015-10-29 11:33:34

标签: python python-2.7 azure azure-webjobs

如何将调试信息从Python脚本打印到Azure WebJob控制台?

我已经成功deployed a continuously running Python WebJob on Microsoft Azure,我已经包含了我的软件包,当控制台显示出一些错误时,我已经能够修复它们并re-upload through FTP

现在,控制台(Azure WebJobs仪表板)显示我的脚本正在运行。

[10/29/2015 10:42:53 > a19167: SYS INFO] Status changed to Starting [10/29/2015 10:42:53 > a19167: SYS INFO] Job directory change detected: Job file 'run.py' timestamp differs between source and working directories. [10/29/2015 10:42:58 > a19167: SYS INFO] Run script 'run.py' with script host - 'PythonScriptHost' [10/29/2015 10:42:58 > a19167: SYS INFO] Status changed to Running

但是,我的脚本中充斥着print()不能显示的语句。我也尝试了sys.stdout.write()sys.stderr.write(),但他们也没有。

更新:打印信息确实显示!它们只是每隔几个小时出现一次......

1 个答案:

答案 0 :(得分:1)

要立即在Azure WebJobs控制台中查看日志语句,只需调用sys.stdout.flush()

在初始化Web作业之后,以及在处理单个任务(例如处理队列消息)之后刷新控制台输出是有意义的。