Как автоматически перезапустить завершенный процесс со статусом выхода 0 в супервизоре?

Я выполняю сценарий PHP с супервизором. Иногда один из моих процессов останавливается с журналом ошибок:

INFO exited: worker_push_notif (exit status 0; expected).

Я уже установил в конфиге autorestart=true но все же, я должен перезапустить его вручную. Ниже мой полный конфиг:

[program:worker_push_notif]
directory = /opt/initproject/workers
command = /usr/bin/php /opt/initproject/workers/fcm_pushnotif.php
autostart=true
autorestart=true
startretries=3
stdout_logfile  = /var/log/initproject/pushnotif.log
stderr_logfile  = /var/log/initproject/pushnotif.err

Нужна помощь, чтобы справиться autorestart для статуса выхода 0, Спасибо.

Примечание: Ubuntu 14.04, Supervisord 3.0

1 ответ

При решении той же проблемы я создал простой сценарий запуска, который вернул 1. Я вызвал сценарий запуска вместо непосредственного вызова исходного сценария. Этого было достаточно, чтобы обмануть руководителя. Я предполагаю, что есть более чистый способ, но не смог найти его в документации.

#!/bin/bash
/path/to/your/script
exit 1
Другие вопросы по тегам