0

我第一次使用无论何时。我的 cron 无法在生产服务器上运行。

我正在使用 rails-3.1.2

在我的 schedule.rb 文件中

every :hour do # Many shortcuts available: :hour, :day, :month, :year, :reboot
  runner "Report.create_report", :environment=>"development"
end

every 2.minutes do
    runner "Report.create_report2" , :environment=>"development"
end

在我的报告模型文件中

  def self.create_report
    r = Report.new
    r.ad_network_campaign_id =1
    r.ad_network_campaign_name=2
    r.save
  end

  def self.create_report2
    r = Report.new
    r.ad_network_campaign_id =5
    r.ad_network_campaign_name=5
    r.save
  end

在此之后我运行命令

whenever --update-crontab <project_name>

在我的 crontab 中

crontab -l
# Begin Whenever generated tasks for: project_name
0 * * * * /bin/bash -l -c 'cd /var/www/jigserv && script/rails runner -e production '\''Report.create_report'\'''

0,2,4,6,8,10,12,14,16,18,20,22,24,26,28,30,32,34,36,38,40,42,44,46,48,50,52,54,56,58 * * * * /bin/bash -l -c 'cd /var/www/jigserv && script/rails runner -e production '\''Report.create_report2'\'''

# End Whenever generated tasks for: project_name

最后,我的数据没有按我的意愿插入到报告表中。

4

1 回答 1

0

伙计,它完全脱离了主题,但在 Rails 3 中使用有很多问题whenever。我建议你迁移到Resque。它非常简单,而且比whenever. 这是相同的resque-scheduler是一个可以帮助您入门的 railscasts。

于 2012-05-11T11:15:54.267 回答