【问题标题】:How to create a special logger如何创建一个特殊的记录器
【发布时间】:2011-06-05 08:54:02
【问题描述】:

我正在尝试创建一个专门用于记录用户帐户活动的日志。我在初始化文件夹中创建了这个:

class UserTraceLogger < Logger
  def format_message(severity, timestamp, progname, msb)
    "#{timestamp.to_formatted_s(:db)} #{severity} #{msg}\r\n"
  end
end

logfile = File.open("#{RAILS_ROOT}/log/user.log", 'a')
userlog = AuditLogger.new(logfile)
userlog.sync = true

我希望能够在我的代码中使用它:

userlog.info 'my message'

现在我在启动 rails 服务器时收到此错误消息:

config/initializers/usertrace_logger.rb:10:in `<top (required)>': uninitialized constant AuditLogger (NameError)

我对 Rails 很陌生。我不完全确定这是创建全局实例的正确方法,也不知道我到底缺少什么。

我做错了什么?

【问题讨论】:

    标签: ruby-on-rails ruby logging


    【解决方案1】:

    您是说UserTraceLogger.new(logfile) 而不是AuditLogger.new(logfile)

    否则你可能会在某处丢失require 'audit_logger'

    【讨论】:

    • 我确实做到了。感谢您了解这一点
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-11-08
    相关资源
    最近更新 更多