Cron ジョブ バンドラー エラー
概要
always gem を使用してコントローラー メソッドを実行する cron ジョブを作成しようとしていますが、問題が発生します。得ています
cron.log ファイルにあります。
スケジュール.rb
every 1.minutes do
runner "Reset.reset"
end
リセット.rb
class Reset < ActiveRecord::Base
def self.reset
logger.debug("This is the cron job")
end
end
また、everytime –update-crontab を実行して cron ジョブを更新しました。
ロガーメッセージがログに表示されないのはなぜですか?
ご協力ありがとうございました。
crontab -l の出力
解決策
ドキュメントには、ランナーの場合、コマンドは cd :path && bin/railsrunner -e :environment ‘:task’ :output のようになると記載されています。しかし、crontab では次のようになります: …bundle exec bin/rails runner -edevelopment…
crontab -e を実行して、bundle exec を手動で削除するか、ドキュメントにあるように、schedule.rb ファイルで job_type :runner を指定します。私にとって、これで問題は解決しました。
job_type :runner, "cd :path && bin/rails runner -e :environment ':task' :output"
every 1.minutes do
runner "Reset.reset"
end