python 脚本崩溃预防/原因检查

python 脚本崩溃预防/原因检查

几天前,我在 Ubuntu 12.04 上使用“python a.py &”运行了一个 python 脚本。我认为它一直在运行,但刚刚我发现它在 2 天前崩溃了。ubuntu 上是否有任何日志信息可以让我找到它崩溃的原因?系统是否记录了任何调试消息?

另外,有没有办法设置警报检查,比如如果这个 python 脚本不再运行,就给我发一封电子邮件?我需要它一直运行。谢谢

答案1

nohup python a.py 2>&1 > myscriptoutput &

在这种情况下,stderror/out 将转到该文件“myscriptoutput”并且不会使用 tty。一旦您关闭 ssh 会话,生成的 HUP 信号将被 python 进程忽略。至于监控您的脚本:设置一个 cron 作业每 2 分钟运行一次并执行如下操作:

    #!/bin/bash
    if ps -aux | grep -v grep | grep a.py; then
        exit 0
    else
        #Generate email
        echo "Script a.py is not running" | mailx -s "My script is dead a.py" [email protected] 
        exit 0
fi

当然,实际上还有更好的方法可以做到这一点,但这可以帮助您入门。

希望这可以帮助。

相关内容