如何解决如何找到python守护进程终止的查找原因?
| 我已经使用python-daemon库在python中实现了一个守护进程。 该守护进程似乎定期死亡(或被杀死),但是该守护进程每天从一天到几个月不等。 我试图通过捕获异常,将异常记录到文件中并将其邮寄给我来找到守护程序死亡的原因。我的脚本的守护程序部分大致如下所示:import daemon
context = daemon.DaemonContext(
working_directory=\'/foo/\',pidfile=lockfile.FileLock(\'/foo/foo.pid\')
)
try:
with context:
do_stuff()
except Exception,e:
log_exception_to_file(e)
mail_exeption_to_me(e)
我已经记录了很多异常并将其发送给我,因此我知道代码通常可以正常工作。
在大多数情况下,我什么也没得到,看门狗脚本使我警觉到守护进程不再运行。有什么方法可以找出或跟踪守护进程死亡或被杀死的原因?
解决方法
在邮寄东西时,请检查内存消耗。可能是内存泄漏并在消耗所有可用RAM时死亡。
resource
模块将使应用程序找出其maxrss,ixrss,idrss和isrss,如果每隔5分钟记录一次,则很明显是否发生内存泄漏。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。