linux – 如何测试ubuntu的UPSTART功能,看看我的脚本会被杀死后自动重启?

我正在使用Ubuntu的upstart功能运行我的Python脚本,这样如果由于某种原因我的Python脚本死亡或被杀死,它可以自动重启.

所以我决定使用Ubuntu的UPSTART功能自动重启Python脚本.

在/etc/init/testing.conf中创建如下的testing.conf文件后 –

chdir /tekooz
exec python testing.py
respawn

我运行下面的sudo命令启动它,我可以看到使用ps ax运行的进程和我的python脚本运行正常.

root@bx13:/tekooz# sudo start testing
testing start/running, process 27794

这是我下面的python脚本 –

#!/usr/bin/python
import time

while True:
    print "Hello World"
    time.sleep(5)

但是我如何测试它以查看我的Python脚本是否被杀死,然后它会自动重启?我无法杀死PID,因为如果我在testing.py上执行ps ax,PID会不断变化.

谁能告诉我如何测试这种情况?我只是想确保我的脚本可以自动重启,如果它被杀死或死亡.

最佳答案
赶紧跑:

sudo status testing

它为您提供正在运行的upstart服务的状态.

使用tail -f / var / log / syslog,您可以看到它是否正在重生.

“Hello World”就是我认为无处可去.

我建议测试:

#!/usr/bin/python
import time
import os

with open('/var/tmp/testing.log', 'a') as fp:
    try:
        while True:
            print >> fp, "Hello World", os.getpid()
            fp.flush()
            time.sleep(5)
    except Exception as e:
        print >> fp, 'exception', e
        fp.flush()
        raise

并在另一个窗口中运行tail -f /var/tmp/testing.log.

转载注明原文:linux – 如何测试ubuntu的UPSTART功能,看看我的脚本会被杀死后自动重启? - 代码日志