Lidando com códigos de saída de supervisão esperados

2

Estou usando supervisord dentro de um contêiner Docker para gerenciar meus processos em execução e também gostaria de usá-lo para acionar determinados comandos - execute-os uma vez e espere que eles saiam com 0 .

Aqui está um exemplo:

[program:central-seed-posts]
command = /usr/bin/php /var/www/app/artisan post
autostart = false
autorestart = false
startsecs = 3
startretries = 0
exitcodes = 0
stderr_logfile=/tmp/central/posts-stderr-supervisor.log
stdout_logfile=/tmp/central/posts-stdout-supervisor.log

Estou usando o docker-enter com supervisorctl start central-seed-posts do nsenter para ativá-lo, mas eu também gostaria de lidar com um sucesso sair em vez de supervisor me dizendo ERROR (abnormal termination)

Tem a ver com eventos de supervisor?

    
por Mulkave 23.08.2014 / 16:40

1 resposta

3

O problema que você está encontrando parece ser com a seguinte opção:

startsecs = 3

Se você ler o manual do supervisord, você pode ver que o startsecs define por quanto tempo o processo deve permanecer ativo após uma inicialização para que o Supervisord considere o início bem-sucedido. Seu processo provavelmente está saindo antes de 3 segundos, o que sugere para supervisionar que a inicialização não foi bem-sucedida.

Tente reduzir isso para 0, a menos que você tenha um motivo real para mantê-lo por 3 segundos.

    
por 24.08.2014 / 14:40