几天前,我在 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
当然,实际上还有更好的方法可以做到这一点,但这可以帮助您入门。
希望这可以帮助。