制作Rails.logger tee写入stdout

时间:2013-02-19 09:04:47

标签: ruby-on-rails ruby logging

我的Rails.logger工作得非常好,非常感谢,但我喜欢写STDOUT(也就是说,不要放弃记录到日志文件,而是“Tee”它到stdout)。

这在Rails 3中是否可行?

2 个答案:

答案 0 :(得分:1)

这个简单的委托记录器应该(*)做到这一点:

class MultiLogger
  def initialize *loggers
    @loggers = loggers
  end

  def method_missing *args, &blk
    @loggers.each {|l| l.send *args, &blk }
  end

  def respond_to_missing? *args
    @loggers.all? {|l| l.respond_to? *args }
  end
end

Rails.logger = MultiLogger.new Rails.logger, Logger.new($stdout)

(*)我没试过它

答案 1 :(得分:-1)

在环境配置

的底部添加此项
Rails.logger = Logger.new(STDOUT)