私はherokuで簡単なcronタスクを実行しています。ただし、動作しません。私は、ログにこれを得続ける:Heroku Cronは実行されません
2011-06-15T03:21:35+00:00 heroku[web.1]: State changed from up to bouncing
2011-06-15T03:21:35+00:00 heroku[web.1]: State changed from created to starting
2011-06-15T03:21:35+00:00 heroku[slugc]: Slug compilation finished
2011-06-15T03:21:41+00:00 heroku[web.1]: Starting process with command: `thin -p 5926 -e production -R /home/heroku_rack/heroku.ru start`
2011-06-15T03:21:46+00:00 app[web.1]: >> Thin web server (v1.2.6 codename Crazy Delicious)
2011-06-15T03:21:46+00:00 app[web.1]: >> Maximum connections set to 1024
2011-06-15T03:21:46+00:00 app[web.1]: >> Listening on 0.0.0.0:5926, CTRL+C to stop
2011-06-15T03:21:47+00:00 heroku[web.1]: State changed from starting to up
2011-06-15T03:22:30+00:00 heroku[web.1]: Stopping process with SIGTERM
2011-06-15T03:22:30+00:00 app[web.1]: >> Stopping ...
2011-06-15T03:22:30+00:00 heroku[web.1]: Process exited
マイcron.rakeファイルを、それがプットをちょうどしないだろう、なぜ
desc "This task is called by the Heroku cron add-on"
task :cron => :environment do
if Time.now.hour % 4 == 0 # run every four hours
puts "Sending email of most popular post."
puts "done."
end
end
わからない(ちょうどプット4時間ごとに行います)。また、これが機能すると、私は頻繁にモデルから関数を呼び出す必要があります。私のモデルがMicropostで、関数がhas_funだったら、私はそれを... Micropost.has_funのcron.rakeで呼び出すことができますか?
ご協力いただければ幸いです。スタックオーバーフローの人々は、私がレールを学ぶための素晴らしい助けとなっています。再度、感謝します。
更新: 私はプットを変更:
UserMailer.registration_confirmation().deliver
しかし、これは同じログ出力になります。私はactionmailerとregistration_confirmation電子メールを複数回テストして、上記の関数で動作します。 。(メールはuser_mailer.rbで静的として符号化される
ありがとうございました。はい、私はherokuアプリ – chris
にcronアドオンを追加しました。ログからは3時に時刻が表示されていることが分かりません。4,8,12,16,20&0で動作します。 – Salil
私はcronがすぐに実行され、この場合は4時間ごとに実行されると考えました。したがって、cronアドオンのインストール時にすぐに実行する必要があります。私は上記のアップデートを追加しました。私は、actionmailerでテストされた電子メールで電子メールを送信しようとしましたが、結果は同じログに記録されます。私は時間のことについて間違っている可能性があります。私にお知らせください!再度、感謝します。 – chris