在 Linux 中捕获 Python 进程之外的错误代码?

在 Linux 中捕获 Python 进程之外的错误代码?

我正在使用一个不是我编写的 Python 代码,它运行了几天甚至几周。它可能还存在一些错误,所以它可能会偶尔崩溃。但我不想每隔几个小时检查一次。我知道如果发生某些事情,Python 进程会返回代码 !=0。

但是,是否有可能从进程外部捕获该问题?如果可以,我愿意这样做,这样如果发生问题,我就可以向自己发送电子邮件。

谢谢。

答案1

您只需要检查返回代码,使用以下命令:-

if PythonScript then
    # Actions on success
    ...
else
    # Actions on failure
    err=$?
    ...
fi

请注意,返回代码$?会被每个执行的命令覆盖,因此如果需要其值用于日志记录或其他目的,则需要在后续命令更改它之前保存它。

如果PythonScript是可执行文件,且有第一行#!/usr/bin/python(或要使用的python版本的路径),那么可以直接调用;否则,应该在它前面加上python或相应的版本。

相关内容