8

我的 Rails 记录器配置当前记录当前时间和 UUID,如下所示:

config.logger = ActiveSupport::TaggedLogging.new(Logger.new("#{Rails.root}/log/#{ENV['RAILS_ENV']}.log", 'daily'))
config.log_tags = [Proc.new {Time.now.strftime('%Y-%m-%d %H:%M:%S.%L')}, :uuid]

有没有办法记录当前消息的日志级别?

即,如果我调用 logger.debug,则标签 [DEBUG] 将添加到消息中。

4

2 回答 2

8

Railscasts 展示了如何通过覆盖 SimpleFormatter#call 方法来覆盖记录器以输出日志消息的严重性:

class Logger::SimpleFormatter
  def call(severity, time, progname, msg)
    "[#{severity}] #{msg}\n"
  end
end

有关详细信息,请参阅http://railscasts.com/episodes/56-the-logger-revised

于 2012-07-12T14:57:08.297 回答
-4

我将 MyApp::Application.config.log_level 添加到日志标签中,它对我有用。

config.log_tags = [Proc.new {Time.now.strftime('%Y-%m-%d %H:%M:%S.%L')}, :uuid, Proc.new {MyApp::Application.config.log_level}]
于 2012-05-17T08:28:51.753 回答