我的 Rails.logger 运行良好,非常感谢,但我也希望它写入 STDOUT(也就是说,不要放弃记录到日志文件,而是将其“Tee”到 stdout)。
这在 Rails 3 中可行吗?
我的 Rails.logger 运行良好,非常感谢,但我也希望它写入 STDOUT(也就是说,不要放弃记录到日志文件,而是将其“Tee”到 stdout)。
这在 Rails 3 中可行吗?
这个简单的委托记录器应该(*)做到这一点:
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)
(*) 我没试过