Я пытаюсь реализовать задания cron в своем приложении rails и абсолютно новичок в работе с crons. Я использую whenever камень в рельсах 3.Всякий раз, когда работа cron не работает (Rails 3)
Эти шаги, которые я сделал:
В Gemfile
gem 'whenever', :require => false
Затем побежал,
wheneverize .
И это, как мой config/schedule.rb выглядит так:
set :environment, :development
set :path, "/home/pc/Workspace/pep1"
every 1.minutes do
runner "Demo.update_time_slot"
command "rm -rf /tmp/cache"
end
Моя Демо модель содержит:
class << self
def update_time_slot
.......
end
end
На терминале, я побежал команды,
whenever --update-crontab pep1
whenever -i
Но, похоже, файл хрон не получает казнены. Но когда я запускаю Demo.update_time_slot на консоли rails, он отлично работает.
Выход кронтаб -l является:
# Begin Whenever generated tasks for: pep1
* * * * * /bin/bash -l -c 'cd /home/pc/Workspace/pep1 && script/rails runner -e development '\''Demo.update_time_slot'\'''
* * * * * /bin/bash -l -c 'rm -rf /tmp/cache'
# End Whenever generated tasks for: pep1
# Begin Whenever generated tasks for: /home/pc/Workspace/pep1/config/schedule.rb
* * * * * /bin/bash -l -c 'cd /home/pc/Workspace/pep1 && script/rails runner -e development '\''Demo.update_time_slot'\'''
* * * * * /bin/bash -l -c 'rm -rf /tmp/cache'
# End Whenever generated tasks for: /home/pc/Workspace/pep1/config/schedule.rb
Выход "Grep CRON/вар/журнал/системный журнал" является:
Oct 12 22:37:01 IdeaPad-S400 CRON[10845]: (pc) CMD (/bin/bash -l -c 'rm -rf /tmp/cache')
Oct 12 22:37:01 IdeaPad-S400 CRON[10846]: (pc) CMD (/bin/bash -l -c 'cd /home/mona/Workspace/pep1 && script/rails runner -e development '\''Demo.update_time_slot'\''')
Oct 12 22:37:01 IdeaPad-S400 CRON[10847]: (pc) CMD (/bin/bash -l -c 'cd /home/mona/Workspace/pep1 && script/rails runner -e development '\''Demo.update_time_slot'\''')
Oct 12 22:37:01 IdeaPad-S400 CRON[10852]: (pc) CMD (/bin/bash -l -c 'rm -rf /tmp/cache')
Я не получаю, когда дела идут не так. Может ли кто-нибудь помочь мне в этом?
Будет очень признателен.
Спасибо.