2015-06-08 3 views
3

У меня есть следующая конфигурация. Я установил, когда драгоценный камень, созданный shedule.rb:Как проверить, работает ли каждый день?

# Learn more: http://github.com/javan/whenever 

every 6.hours do 
    runner "Part.check_status_update" 
end 

В part.rb модели у меня есть соответствующий метод.

A. Как проверить, работает ли whenever? Насколько я понимаю, он должен только модифицировать crontab после команды whenever в bash, да?

B. Если метод не запускается - тогда как я могу отлаживать запланированные задания? Если я поставлю в свой метод puts заявления - где они будут храниться или выводиться?

+2

Команда «Whenever» выводит строки только в синтаксисе «crontab». Чтобы на самом деле обновлять расписание, вы должны запускать «каждый раз --update-crontab». Но заметьте, что он удалит существующий crontab! – hedgesky

ответ

6

Вам необходимо определить файл журнала, который затем получит любой вывод из вашего вызова Part.check_status_update (например, звонки puts). Вы можете установить файл журнала по умолчанию для всех заданий в верхней части файла schedule.rb, такие как:

set :output, '/path/to/file.log' 

Например, для входа в Rails.root/log/whenever.log:

set :output, 'log/whenever.log' 

Вы можете также определить выход за задачи:

runner "Part.check_status_update", :output => 'log/check_status_update.log' 

См the Whenever wiki entry on the subject для полного объяснения деталей и опций, таких как ошибки лесозаготовок в отдельный файл.

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