如何在Rails中启用日志记录?

时间:2013-05-06 06:30:28

标签: ruby-on-rails ruby ruby-on-rails-3

我是Ruby / Rails的新手,但不是开发新手。

我在iniatializer.rb中定义了以下代码:

def logger
  if defined?(RAILS_DEFAULT_LOGGER)
    RAILS_DEFAULT_LOGGER
  else
    nil
  end
end

我想在Ruby / Rails应用程序中启用消息记录。

在一些Ruby / Rails代码中,我有

  logger.info "Email attachment: #{size} #{filename}"

\ ruby​​ \ bin> ruby​​ --version给出: ruby 1.8.7(2010-01-10 patchlevel 249)[i386-mingw32]

如何更改记录器定义以便logger.info进入我可以打开并读取的文件?请包括必要的要求/包括。

谢谢。

2 个答案:

答案 0 :(得分:3)

如果您的铁路< 3.X然后使用下面的代码

def logger
  if defined?(RAILS_DEFAULT_LOGGER)
    Logger.new('log/my_log.log')
  else 
    nil 
  end
end

如果您的导轨> 3.X然后用上面代码中的Rails.logger替换RAILS_DEFAULT_LOGGER

def logger
  if defined?(Rails.logger)
    Logger.new('log/my_log.log')
  else 
    nil 
  end
end

答案 1 :(得分:1)

RAILS_DEFAULT_LOGGER很久以前被删除了。新名称为Rails.logger。这将在导轨加载时为您创建。