【发布时间】:2013-01-18 14:18:41
【问题描述】:
这是过时的吗? http://guides.rubyonrails.org/debugging_rails_applications.html 我是一步一步来的,
在“2.1 什么是记录器?”部分中
它说明了如何创建自定义记录器。
1) 您可以在 environment.rb 或任何环境文件中指定替代记录器:
Rails.logger = Logger.new(STDOUT)
Rails.logger = Log4r::Logger.new("Application Log")
我把这段代码放在我的 environment.rb 文件中,我得到了这个:
未初始化的常量 Log4r (NameError)
..然后它说'或者在初始化部分,添加以下任何内容:'
config.logger = Logger.new(STDOUT)
config.logger = Log4r::Logger.new("Application Log")
我的 environment.rb 文件中没有初始化程序部分! 我得到同样的错误!
上面写着“如果您愿意,您也可以替换另一个记录器,例如 Log4r。” 为什么有人要替换现有的记录器?
我从 environment.rb 文件中删除了 Rails.logger = Log4r::Logger.new("Application Log")。
它似乎正在工作,但我期待在 log/ 目录中创建一个文件,但什么也没有。这是我的 enviroment.rb 文件:
# Load the rails application
require File.expand_path('../application', __FILE__)
Rails.logger = Logger.new('Application Log')
# Initialize the rails application
MyApp::Application.initialize!
帮助?请解释一下?
【问题讨论】:
-
您是否将 log4r 添加到您的 Gemfile 中?
标签: ruby-on-rails ruby ruby-on-rails-3.2