Iniciar o trabalhador Resque com script não funciona, começar manualmente funciona

Iniciar o trabalhador Resque com script não funciona, começar manualmente funciona

Estou tentando descobrir por que meu processo não funciona se iniciado por meio de um script, mas funciona bem se iniciado manualmente.

Aqui estão os detalhes:

script é um script de início de trabalho de resque. A localização do script é /etc/monit/conf.d/start_resque.sh. As permissões são 755 e pertencem ao ubuntu:ubuntu

Quando executo o script, a saída do log obtém um pid e diz "iniciando o trabalhador ip-xx-xxx-xxx-xx:26732 (ou qualquer que seja o pid)", no entanto, quando eu ps aux | grep 26732, nada é mostrado em execução. Quando executo exatamente o mesmo comando manualmente no diretório do projeto Rails, a mesma saída "iniciando o trabalhador" é exibida e o processo é realmente iniciado e continua em execução. Uma coisa a observar: a saída adicional é exibida se iniciada manualmente: "nohup: ignorando entrada"

Outra questão com a qual alguém pode ajudar é por que BACKGROUND=yes na verdade não daemoniza meu trabalhador ... por isso estou recorrendo ao nohup, que parece funcionar bem.

Aqui está o meu script (o comando que executo manualmente fica depois do cd):

#!/bin/bash
echo "starting worker.."
workercount="$(ps aux | grep -c resque)"
currentdir="/var/www/apps/myapp/current"
logdir=$currentdir/log/resque_worker.log
pidfile=$currentdir/tmp/pids/resque_worker_$workercount.pid
cd $currentdir
nohup bundle exec rake environment resque:work RAILS_ENV=production QUEUE='*' VERBOSE=1 PIDFILE=$pidfile >> $logdir 2>&1 &
echo "started worker $workercount! view log at $logdir. view pidfile at $pidfile"

Notas adicionais: no Ubuntu 12.04 e estou conectado sshenquanto executa o script e o comando manual.

Responder1

Ok, mudei para o Sidekiq e "simplesmente funciona". Muito tempo perdido brincando com resque e implantação, mas ganhei algum XP e quase subi de nível em minha habilidade de administrador de sistemas. Sidekiq parece uma opção melhor - ele aproveita os tópicos e tem um ótimo wiki, interface web atualizada, uma opção profissional e um ícone ninja muito legal em sua página inicial.

informação relacionada