2

我的 Rails.logger 运行良好,非常感谢,但我希望它写入 STDOUT(也就是说,不要放弃记录到日志文件,而是将其“Tee”到 stdout)。

这在 Rails 3 中可行吗?

4

1 回答 1

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)

(*) 我没试过

于 2013-02-19T15:51:10.507 回答