我尝试从rails中的delayed_job中记录日志。Log in from collectiveidea/delayed_job
我将其配置如下:
Delayed::Worker.destroy_failed_jobs = false
Delayed::Worker.max_attempts = 3
Delayed::Worker.backend = :active_record
Delayed::Worker.logger = ActiveSupport::BufferedLogger.new("log/#{Rails.env}_delayed_jobs.log", Rails.logger.level)
Delayed::Worker.logger.auto_flushing = 1
定义我的工作:
class TestJob
def initialize(user)
@user = user
end
#called when enqueue is performed
def enqueue(job)
Delayed::Worker.logger.info("TestJob: enqueue was called")
end
def perform
Delayed::Worker.logger.info("\n\n\n\nTestJob: in perform, for user #{@user.twitter_username}")
end
end
但是当我打电话enquee对我的工作
Delayed::Job.enqueue(TestJob.new(user), 2)
日志文件保持为空,甚至尽管delayed_jobs表显示作业已执行。
任何想法?
看起来你并不孤单: http://stackoverflow.com/questions/3500200/getting-delayed-job-to-log – 2011-05-02 18:09:11