gpt4 book ai didi

python - 有没有办法让 python 程序在即将崩溃时运行一个 Action ?

转载 作者:太空宇宙 更新时间:2023-11-03 13:01:06 24 4
gpt4 key购买 nike

我有一个带有循环的 python 脚本,它经常崩溃并出现各种异常,需要重新启动。有没有办法在发生这种情况时运行操作,以便我收到通知?

最佳答案

您可以通过将自定义函数分配给 sys.excepthook handler 来安装异常 Hook .只要出现未处理异常(即退出解释器的异常),就会调用该函数。

import sys

def myexcepthook(type, value, tb):
import traceback
from email.mime.text import MIMEText
from subprocess import Popen, PIPE
tbtext = ''.join(traceback.format_exception(type, value, tb))
msg = MIMEText("There was a problem with your program:\n\n" + tbtext)
msg["From"] = "me@example.com"
msg["To"] = "you@example.com"
msg["Subject"] = "Program exited with a traceback."
p = Popen(["/usr/sbin/sendmail", "-t"], stdin=PIPE)
p.communicate(msg.as_string())

sys.excepthook = myexcepthook

只要您的系统上有有效的 sendmail 命令,此异常 Hook 就会在程序退出时通过电子邮件向您发送回溯信息。

关于python - 有没有办法让 python 程序在即将崩溃时运行一个 Action ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20829300/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com