Adicionando resque-web ao Supervisord

Adicionando resque-web ao Supervisord

Estou correndo supervisordpara manter o Redis e outros softwares em funcionamento. No entanto, não posso, de jeito nenhum, começar resque-weba trabalhar.

Este é o .ini que estou incluindo:

[programa:resque]
comando=/usr/local/rvm/gems/ruby-2.0.0-p195/bin/resque-web
inicialização automática = verdadeiro
reinicialização automática=true
usuário = raiz
stdout_logfile=/var/lib/resque/stdout.log
stderr_logfile=/var/lib/resque/stderr.log

Infelizmente, quando executo, service supervisor restartrecebo o seguinte no supervisordlog:

INFO encerrado: resque (status de saída 127; não esperado)

De acordo com o Googlecódigo 127é "Comando não encontrado". No entanto, se eu executar esse comando manualmente, o servidor resque-web inicializará perfeitamente com a saída de:

[2013-05-24 00:03:09 -0600] Iniciando 'resque-web'...
[2013-05-24 00:03:09 -0600] tentando a porta 5678...

Também é importante notar que vejo o seguinte quando /var/lib/resque/stderr.logo supervisord tenta iniciar o resque-web:

/usr/bin/env: ruby_noexec_wrapper: Esse arquivo ou diretório não existe

Então estou perplexo. Todos os outros softwares que configurei no supervisord funcionam perfeitamente. Esse é o único que me dá dor de cabeça...

Editar 1

Tentei criar um script bash simples para contornar isso e agora recebo um erro diferente no stderr.logarquivo. O .ini que incluo foi alterado para tercommand=/usr/local/bin/resque-web

/usr/local/bin/resque-web

#!/bin/bash
fonte /usr/local/rvm/environments/default
resgatar-web

Erro

usr/local/rvm/gems/ruby-2.0.0-p195/gems/vegas-0.1.11/lib/vegas/runner.rb:82:in `app_dir': nem --app-dir nem EVN['HOME '] definido (ArgumentError)
        de /usr/local/rvm/gems/ruby-2.0.0-p195/gems/vegas-0.1.11/lib/vegas/runner.rb:66:in `initialize'
        de /usr/local/rvm/gems/ruby-2.0.0-p195/gems/resque-1.24.1/bin/resque-web:13:in `novo'
        de /usr/local/rvm/gems/ruby-2.0.0-p195/gems/resque-1.24.1/bin/resque-web:13:in `'
        de /usr/local/rvm/gems/ruby-2.0.0-p195/bin/resque-web:23:in `load'
        de /usr/local/rvm/gems/ruby-2.0.0-p195/bin/resque-web:23:in `'
        de /usr/local/rvm/gems/ruby-2.0.0-p195/bin/ruby_noexec_wrapper:14:in `eval'
        de /usr/local/rvm/gems/ruby-2.0.0-p195/bin/ruby_noexec_wrapper:14:in `'

Responder1

Bem, parece que o supervisor não funcionará com o resque-web, pois é um processo daemonizado. A solução foi criar /etc/cron.d/resquee colocar o seguinte nele:

SHELL=/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/rvm/gems/ruby-2.0.0-p195/bin
CASA=/
* * * * * raiz resque-web

Isso é executado a cada minuto e reinicia o servidor se ele travar. Bom o suficiente para mim!

informação relacionada