#ruby-on-rails #whenever
#ruby-on-rails #всякий раз, когда
Вопрос:
Я использую whenever gem для планирования небольшого задания cron.
Вот мое расписание.rb
every 1.minute do
rake "send_query:to_dummy", :environment => "development"
end
Вот задача rake
namespace :send_query do
task :to_dummy => :environment do
Dummy.create(name: "1234")
end
end
Задача rake rake send_query:to_dummy
отлично работает сама по себе. Но я не могу заставить cronjob работать
когда я набираю всякий раз, когда
whenever
* * * * * /bin/bash -l -c 'cd /home/gvpmahesh/code/digifutura/website amp;amp; RAILS_ENV=development bundle exec rake send_query:to_admins --silent'
* * * * * /bin/bash -l -c 'cd /home/gvpmahesh/code/digifutura/website amp;amp; RAILS_ENV=development bundle exec rake send_query:to_dummy --silent'
## [message] Above is your schedule file converted to cron syntax; your crontab file was not updated.
## [message] Run `whenever --help' for more options.
Я пробовал whenever -i
, и sudo service cron restart
все равно cronjob не выполняется. Любые предложения были бы полезны
Комментарии:
1. работает ли этот cronjob с каким-то другим временным шаблоном?
2. Да, тот же шаблон работает с каким-либо другим приложением
3. Загляните в файл журнала cron. Там вы должны найти подсказку, что происходит не так. Возможно, cron не может найти ваш Ruby или отсутствует что-то еще, например, переменная среды для внешней службы, такой как ваша база данных.
4. Если вы прочитали
whenever
выходные данные, в нем говорится, что он не обновил ваш файл crontab. Таким образом, Cron не обнаружит это и никогда не выполнит эти команды. Кроме того, почему вы хотите запускать cronjobs в процессе разработки??5. Запустите
crontab -l
и проверьте, показывает ли он cronjobs, которыйwhenever
отображается после выполнения его команды.