我的服务器上有一个像这样运行的 python 脚本:
python script.py &
该脚本工作正常,但我不断向脚本添加新内容并重新运行它,有时它运行了几天没有任何问题,但有时脚本停止运行(没有内存不足),但自从我开始脚本作为背景我不知道如何检查导致脚本停止运行的异常或错误。我在亚马逊上运行的 Ubuntu 服务器上。关于如何解决这种不便的任何建议?
我用这样的东西。它会将导致系统日志终止的异常转储到您的系统日志中,您可以通过/var/log/syslog
在脚本停止后检查来查看该异常。
import traceback
import syslog
def syslog_trace(trace):
'''Log a python stack trace to syslog'''
log_lines = trace.split('\n')
for line in log_lines:
if len(line):
syslog.syslog(line)
def main():
# Your actual program here
if __name__ == '__main__':
try:
main()
except:
syslog_trace(traceback.format_exc())