supervisord
이 내 Ubuntu 10.04에 설치되어 있고 Java 프로세스가 계속 실행되며 어떻게 든 죽거나 충돌 할 때 프로세스를 치료 (다시로드)해야합니다. 에Supervisord가 죽은 프로세스를 시작하지 않습니다
내 htop
내가 SIGKILL이, SIGTERM는, SIGHUP, 그 Java 프로세스에 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
다음과 같이 특정 프로그램이 있습니다 : 내가 supervisord을 시작할 때
[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
프로세스가 정말 잘 작동하지만 치유되지 않습니다.
그런데 어떻게하면 시스템 전체가 재부팅 될 때 자동으로 서비스되도록 슈퍼 바이저를 서비스로 시작하는 방법에 대한 아이디어가 있습니까?
굉장합니다! 이'autorestart' 설정을 찾고있었습니다. 기본적으로 그것이'true'라고 기대하고 있었고 문서에서 길을 잃었습니다. BTW 나는'chkconfig'는 프로세스가 서비스가되어야한다고 생각하지만,'supervisord'는 서비스가 아니므로'chkconfig -l' 명령은 나에게 작용하지 않고'supervisor : unrecognized service'라고합니다. 그걸 어떻게 생각하니? –
어떻게 수퍼바이저를 설치 했습니까? apt-get을 사용한다면 적어도 Ubuntu 10.04에서는 서비스로 설치됩니다. –
그것은 10.04에 있었고'easy_install'을 사용하여 설치했다고 생각합니다. 그것을 알아 줘서 고마워. –