我有一个包含大量任务的应用程序,每3分钟我想运行一个发送邮件进行某些测试的cron作业。我正在使用随时随地的宝石,但它似乎根本没有运行。任何想法?
配置/ schedule.rb
every 3.minutes do
runner "MailerClass.some_method"
end
MailerClass.rb
def some_method
mail(:to => "some email", :cc => 'some email', :subject => "Regular Email by rake task #{Time.now.strftime("%H : %m")}", :from => "default_sender@udk.com") do |format|
end
end
在修改config / schedule.rb之后我尝试了什么,
whenever --update-crontab --set environment=development
sudo service cron restart
我跑的时候 crontab -l 这是输出
0,3,6,9,12,15,18,21,24,27,30,33,36,39,42,45,48,51,54,57 * * * * /bin/bash -l -c 'cd /home/my_app && script/rails runner -e development '\''MailerClass.some_method'\'' >> log/notification.log 2>&1'
我检查了日志。问题是
script / rails:第6行:意外令牌附近的语法错误('
script/rails: line 6:
APP_PATH = File.expand_path(' ../../ config / application', FILE )& #39;
我没有得到这个。我是铁杆新手。那可能是为什么:(。
任何解决方案!!!
答案 0 :(得分:0)
根据您更新的信息,我正在更新我的答案
从此行APP_PATH = File.expand_path('../../config/application', FILE)'
答案 1 :(得分:0)
看起来您忘记了实际发送电子邮件
而不是
MailerClass.some_method
试
MailerClass.some_method.deliver