2009-11-11 5 views
3

Я установил свой файл schedule.rb следующим образом.Как получить работу cron при использовании Javan-when in Rails

set :cron_log, "/log/cron_log.log" 
if Rails.env.development? 
    every 1.minute do 
    runner "SomeModel.move_values" 
    runner "SomeOtherModel.dispense" 
    end 
end 

Я также заставить его работать в режиме разработки по когда --update-кронтаб ствол --set среда = развитие не

Но мои методы модели (методы класса) не называются. Есть ли способ проверить, правильно ли он настроен. Когда я просто использую обновление, он сбрасывает настройки, чтобы использовать производственную среду.

ответ

2

Я только что закончил, используя тот же самый плагин javan-every.

В терминале тип crontab -l. Если вы видите, что crontab правильно сгенерирован, вы знаете, что это либо код, либо какой-то сервер.

Возможно, вы захотите сделать set :environment, RAILS_ENV в вашем файле schedule.rb, чтобы динамически устанавливать среду.

Райан Бейтс сделал хороший скринкаст на этом: http://railscasts.com/episodes/164-cron-in-ruby

Кроме того, есть веб-альтернативы, например: webbasedcron

+0

Эй спасибо за ответ, но я начал после прохождения скринкасты и кронтаб -l делает дисплей * * * * */дом/с.и.д./папка/багажник/скрипт/бегун -e производства «CreditDetail.move_values ">> /log/cron.log 2> & 1 * * * * */home/sid/folder/trunk/script/runner -e production" Exp.dispense ">> /log/cron.log 2> & 1 , но он не обновляет мой журнал или запускает cron. Я не уверен, что я что-то упустил или у меня возникли какие-то конфигурации. Я проведу ссылку, которую вы мне отправили, но я по-прежнему буду признателен за помощь в этом – Sid

+0

Просто, конечно, crontab, который вы только что опубликовали, с вашего производственного сервера правильно ? Если нет, он должен сказать «-e развитие». Еще одна проверка, если вы откроете консоль и запустите «CreditDetail.move_values» или «Exp.dispense», возникли ли какие-либо ошибки? – tybro0103

+0

Нет, я хочу запустить cron на моей машине разработки. И спасибо за ответ. Я понял, что версия используемого драгоценного камня была датирована, и одна из доступных на gemcutter - это новейшая версия драгоценного камня. Я получил его, как только я получил драгоценный камень из нового источника. Спасибо. – Sid

1

Выполнить всякий раз, когда --set среда = тест -w

, чтобы создать свой crontab в тестовой среде, очевидно, вы можете заменить тест на любую среду, в которой вы работаете.

 Смежные вопросы

  • Нет связанных вопросов^_^