2017-10-13 46 views
0

我试图实现创业板“每当”,这样我就可以每天运行自动任务。克伦工作与每当不在生产中工作

这是我schedule.rb文件:

env :PATH, ENV['PATH'] 
set :output, "log/cron_log.log" 

every :day, at: '10:10 am' do 
    runner "Task.new.get_drivers" 
end 

every :day, at: '10:15 am' do 
    runner "Task.new.get_deliveries" 
end 

every :day, at: '10:20 am' do 
    runner "Task.new.update_deliveries" 
end 

在生产中,我跑这个命令行 “每当--update-的crontab” 作为文档解释。

到目前为止,一切似乎都很好。当我运行命令行“时”,我有这样的结果:

# Begin Whenever generated tasks for: /home/total/site/config/schedule.rb 
PATH=/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/home/total/.local/bin:/home/total/bin 

10 10 * * * /bin/bash -l -c 'cd /home/total/site && bundle exec bin/rails runner -e production '\''Task.new.get_drivers'\'' >> log/cron_log.log 2>&1' 

15 10 * * * /bin/bash -l -c 'cd /home/total/site && bundle exec bin/rails runner -e production '\''Task.new.get_deliveries'\'' >> log/cron_log.log 2>&1' 

20 10 * * * /bin/bash -l -c 'cd /home/total/site && bundle exec bin/rails runner -e production '\''Task.new.update_deliveries'\'' >> log/cron_log.log 2>&1' 

# End Whenever generated tasks for: /home/total/site/config/schedule.rb 

但最后,没有任何反应(当我运行自己在我的控制台中的cron作业除外)。而我的日志什么都没显示。你有什么想法可能是什么问题?

谢谢你的帮助。 最好的问候,

维吉尼

+0

手动运行时输出是什么? (例如'cd/home/total/site && bundle exec bin/rails runner -e production') – mabe02

+0

我的数据被提取并正确保存在我的数据库中。但我没有记录这个过程。 – Wivi0

+0

您可以尝试安排某些内容来尝试调试问题吗?对于耙子任务,我每次都使用'很多'而没有任何问题。这可能是因为这些原因而没有执行https://askubuntu.com/questions/23009/why-crontab-scripts-are-not-working – mabe02

回答

0

部署后尝试crontab -l。这将打开你的crontab并列出所有任务。然后运行whenever --update-crontab并再次检查crontab -l。 可能是因为whenever --update-crontab没有真正更新您的crontab。

也试图改变:day1.day

还要检查,如果你的Capfile包含require 'whenever/capistrano',如果部署通过Capistrano的。