【发布时间】:2011-12-15 16:58:56
【问题描述】:
我在我的 Ubuntu 10.04 上安装了 supervisord,它连续运行一个 Java 进程,并且应该在它以某种方式死亡或崩溃时修复(重新加载)进程。
在我的htop 上,我向那个Java 进程 发送SIGKILL、SIGTERM、SIGHUP、SIGSEGV 信号,然后观看/etc/logs/supervisord.log 文件,它会说。
08:09:46,182 INFO success: myprogram entered RUNNING state,[...]
08:38:10,043 INFO exited: myprogram (exit status 0; expected)
在08:38,我使用 SIGSEGV 终止了该进程。怎么退出代码为0,为什么supervisord根本不重启?
我所有关于这个具体程序的supervisord.conf如下:
[program:play-9000]
command=play run /var/www/myprogram/ --%%prod
stderr_logfile = /var/log/supervisord/myprogram-stderr.log
stdout_logfile = /var/log/supervisord/myprogram-stdout.log
当我启动 supervisord 时,进程工作得很好,但是没有得到治愈。
顺便问一下,有什么想法可以将 supervisord 作为服务启动,以便在整个系统重新启动时自动启动?
【问题讨论】:
标签: supervisord