Executando um trabalho cron ruby

0

Eu estava tentando criar um cron job que executa um código ruby no oceano digital, mas parece que estou cometendo um erro. Não dá erro, mas também não faz nada. Eu corri este cronjob no meu pi framboesa no entanto no oceano digital não funciona. Aqui meu cronjob

59 17 * * * ruby /home/workspace/delta/analytics/analyze.rb 7 >> /home/testruby

Cria o arquivo testruby, mas o analyze.rb 7 não funciona. Eu testei executando ruby / home / .... e está funcionando. Qual pode ser o problema?

UPDATE

arquivo de erro: bin / sh: 1: / usr / local / bin / ruby: não encontrado

Isto é o que eu escrevi no meu crontab

* * * * * /usr/local/bin/ruby /home/workspace/deriva/analytics/analyze.rb 7 >> /home/testruby 2>&1
    
por Ahmet Tanakol 28.05.2015 / 20:02

1 resposta

2

Diferentes variáveis de ambiente, diretório de trabalho, ... Você precisa depurar onde exatamente o analyze.rb está saindo.

Primeiro, você está apenas redirecionando stdout, não stderr. Erros provavelmente vão para o último, então adicionar um 2>&1 ao final pode ajudar muito. Ou configurando EMAIL= na parte superior do seu crontab para que eles sejam enviados para você.

Você pode confirmar que ruby está iniciando o print "starting!\n" ou similar ao início do seu script Ruby, e ver se isso aparece no arquivo de log.

    
por 28.05.2015 / 20:20

Tags