Ana*_*and 7 ruby-on-rails delayed-job ruby-on-rails-3
我希望我的延迟作业"代码"登录不同的日志文件以满足业务需求.所以我在名为dj.log的日志中记录自定义状态.在"序列化"作业中,我将日志语句记录在我的文件中.
这是设置的方式
Delayed::Worker.destroy_failed_jobs = false
Delayed::Worker.sleep_delay = 60
Delayed::Worker.max_attempts = 10
Delayed::Worker.delay_jobs = !( Rails.env.test? || Rails.env.development? ) #dont use delayed_job in development or test mode
#Delayed_job custom logger
DJ_LOGFILE = File.join(Rails.root, 'log', 'dj.log')
Run Code Online (Sandbox Code Playgroud)
这是工人实际做的工作
people.each {|p| Mailer.mail(1233, p).deliver; sent_to << p.email }
Logger.new(DJ_LOGFILE).info("[DELIVERED] All Emails delivered (#{sent_to.join(", ")})")
Run Code Online (Sandbox Code Playgroud)
这可能是什么问题?请帮忙
Oll*_*lly 12
DelayedJob维护它自己的记录器,因此您需要将其指向您的特定日志文件.因此,在初始化文件(environment.rb或更好的特定delayed_job.rb文件中config/initializers)中添加以下内容:
Delayed::Worker.logger = Logger.new(File.join(Rails.root, 'log', 'dj.log'))
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
7293 次 |
| 最近记录: |