繁体   English   中英

Delayed_job不再记录

[英]Delayed_job is no longer logging

由于某种原因,我的Rails应用程序不再将我的DelayedJob gem的活动记录到单独的日志( delayed_job.log )或主要的Rails开发日志中。 如果与此相关,我还使用了Workless gem。

它曾经这样说:

2013-06-07T19:16:25-0400: [Worker(delayed_job.workless host:MyNames-MacBook-Pro.local       pid:28504)] Starting job worker
2013-06-07T19:16:38-0400: [Worker(delayed_job.workless host:MyNames-MacBook-Pro.local pid:28504)] MyApp#scrape completed after 13.0290
2013-06-07T19:16:38-0400: [Worker(delayed_job.workless host:MyNames-MacBook-Pro.local pid:28504)] 1 jobs processed at 0.0761 j/s, 0 failed ...
2013-06-07T19:16:43-0400: [Worker(delayed_job.workless host:MyNames-MacBook-Pro.local pid:28504)] Exiting...

但是任何日志中都不再显示任何内容。

如何确保DelayedJob活动日志记录到主开发日志中? 我不介意它是否也记录到单独的日志中,但是重要的是我在Mac的控制台中看到了它的活动。

我已经在网上搜索了此问题的答案(例如此处 ,没有任何反应。

这是我的delay_job_config.rb :(在config / initializers中)

Delayed::Worker.sleep_delay = 60
Delayed::Worker.max_attempts = 2
Delayed::Worker.max_run_time = 20.minutes
Delayed::Worker.logger = Rails.logger
Delayed::Worker.logger.auto_flushing = true

如果您想从我的应用中获取更多代码,请告诉我-我们很乐意提供。 非常感谢Rails的新手。

我终于有了这个工作。 感谢Seamus Abshere对这里问题的回答。 我把他下面发布的内容放在初始化文件中。 这有delay_job记录到我的development.rb文件中(huzzah!)。

但是,delay_job仍未登录到我的控制台(由于我仍然不了解的原因)。 我通过打开一个新的控制台选项卡并输入tail -f logs/development.log解决了这一tail -f logs/development.log

但是,与Seamus所写的不同,在Rails 4中不赞成使用auto-flushing=true ,而我的Heroku应用程序崩溃了。 我通过将其从初始化程序文件中删除并将其作为config.autoflush_log = true放在我的environments/development.rb文件中来解决此问题。 但是,我发现两种冲洗都不是进行这项工作所必需的。

这是他的代码(没有自动刷新):

file_handle = File.open("log/#{Rails.env}_delayed_jobs.log", (File::WRONLY | File::APPEND | File::CREAT))
# Be paranoid about syncing
file_handle.sync = true
# Hack the existing Rails.logger object to use our new file handle
Rails.logger.instance_variable_set :@log, file_handle
# Calls to Rails.logger go to the same object as Delayed::Worker.logger
Delayed::Worker.logger = Rails.logger

如果以上代码不起作用,请尝试用Rails.logger替换RAILS_DEFAULT_LOGGER

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM