验证 python 脚本随机暂停的原因
Verifying why python script is randomly pausing
我有几个 python 脚本,它们每天在远程服务器上的 ETL 工具 (pentaho) 中自动 运行。第一个脚本创建一系列文件(10 个文件),第二个脚本将这些文件中的每一个发送到指定的电子邮件列表。该脚本已经 运行 几个月了,但在过去的几周里,有几天脚本在中途停滞而没有返回任何错误(它停止的地方是随机的,我可以通过数字推断它文件 created/sent)。如果我随后手动停止脚本并再次 运行 它 运行 没有问题。
我正在寻找有关如何找出造成这种情况的原因的建议。该问题是随机的,在 运行 手动执行脚本时不会发生。
有没有办法每天插入一些调试行(可能输出到 txt 文件中),以便当它再次停止时我可以检查正在标记的警报 - 如果有的话?
有没有办法每天插入一些调试行(可能输出到 txt 文件中),以便当它再次停止时我可以检查正在标记的警报 - 如果有的话?
是的,最简单的方法是附加到文本文件,假设它被命名为 log.txt
然后
with open("log.txt","a") as f:
print("done something",file=f,flush=True)
将 done something
附加到 log.txt
文件,注意 flush=True
确实提供了尽快将更改应用于文件的方法。
脚本在中途停止,没有返回任何错误
然后根据外部条件寻找阻塞操作,例如通过网络获取资源和服务器过载可能导致蜗牛下载速度,因此看起来像停滞不前。
我有几个 python 脚本,它们每天在远程服务器上的 ETL 工具 (pentaho) 中自动 运行。第一个脚本创建一系列文件(10 个文件),第二个脚本将这些文件中的每一个发送到指定的电子邮件列表。该脚本已经 运行 几个月了,但在过去的几周里,有几天脚本在中途停滞而没有返回任何错误(它停止的地方是随机的,我可以通过数字推断它文件 created/sent)。如果我随后手动停止脚本并再次 运行 它 运行 没有问题。
我正在寻找有关如何找出造成这种情况的原因的建议。该问题是随机的,在 运行 手动执行脚本时不会发生。 有没有办法每天插入一些调试行(可能输出到 txt 文件中),以便当它再次停止时我可以检查正在标记的警报 - 如果有的话?
有没有办法每天插入一些调试行(可能输出到 txt 文件中),以便当它再次停止时我可以检查正在标记的警报 - 如果有的话?
是的,最简单的方法是附加到文本文件,假设它被命名为 log.txt
然后
with open("log.txt","a") as f:
print("done something",file=f,flush=True)
将 done something
附加到 log.txt
文件,注意 flush=True
确实提供了尽快将更改应用于文件的方法。
脚本在中途停止,没有返回任何错误
然后根据外部条件寻找阻塞操作,例如通过网络获取资源和服务器过载可能导致蜗牛下载速度,因此看起来像停滞不前。