Ruby on rails 延迟工作不是';t登录Heroku
我使用以下配置成功登录到自定义日志文件:Ruby on rails 延迟工作不是';t登录Heroku,ruby-on-rails,heroku,delayed-job,Ruby On Rails,Heroku,Delayed Job,我使用以下配置成功登录到自定义日志文件: Delayed::Worker.logger = ActiveSupport::BufferedLogger.new("log/#{Rails.env}_delayed_jobs.log", Rails.logger.level) config.log_level = :debug 它在本地工作。我可以看到文件更改和我想要的所有日志 但问题是,当我部署到Heroku并运行作业,并尝试通过控制台读取文件内容时,我没有得到预期的结果 irb(mai
Delayed::Worker.logger =
ActiveSupport::BufferedLogger.new("log/#{Rails.env}_delayed_jobs.log", Rails.logger.level)
config.log_level = :debug
它在本地工作。我可以看到文件更改和我想要的所有日志
但问题是,当我部署到Heroku并运行作业,并尝试通过控制台读取文件内容时,我没有得到预期的结果
irb(main):070:0* File.read('/app/log/production_delayed_jobs.log')
=> "# Logfile created on 2013-06-20 08:36:43 +0000 by logger.rb/25413\n"
注意,我将loggin级别设置为:在生产中调试。在config/environments/production.rb中,我有以下配置:
Delayed::Worker.logger =
ActiveSupport::BufferedLogger.new("log/#{Rails.env}_delayed_jobs.log", Rails.logger.level)
config.log_level = :debug
基本上@yoav是正确的,您不能在heroku上写入自己的日志文件(没有文件系统访问权限)。heroku日志中描述了您可以执行的操作:基本上@yoav是正确的,您不能在heroku上写入自己的日志文件(没有文件系统访问权限)。heroku日志中描述了您可以做的事情:我不认为您可以在heroku上保存本地文件,因为它们的dyno架构。每台服务器都有自己的应用程序/日志目录。您不应该在heroku上使用基于文件的日志记录。如果您需要的不仅仅是heroku日志,请查看日志加载项(我个人使用Papertrail),谢谢您的指导。我会看这些文章。我认为你不能在heroku上保存本地文件,因为它们的dyno架构。每台服务器都有自己的应用程序/日志目录。您不应该在heroku上使用基于文件的日志记录。如果您需要的不仅仅是heroku日志,请查看日志加载项(我个人使用Papertrail),谢谢您的指导。我来看看这些文章。