jro*_*ind 5 logging ruby-on-rails
Rails 3.0,在重要的程度上.
因此,通常在开发模式下,如果您在交互式控制台中,则记录器消息最终会写入development.log和控制台.
这只是漂亮,很好.
但是我无法弄清楚,如果我在启动过程中写一个记录器消息(例如在config.after_initialize中),那么这不会发生.日志消息位于log/development.log文件中,但未写入控制台.这是令人讨厌的,我在启动过程中写出一些内容(回显某些配置)的原因是开发人员可以看到它,因为它有助于调试.
任何人都知道这里发生了什么,如果我能做些什么呢?
小智 4
您需要做的就是在记录器调用之前添加打印语句,例如:
config.after_initialize do
print Rails.logger.info("Testing")
end
Run Code Online (Sandbox Code Playgroud)
Rails 控制台在初始化时不会自动显示任何内容,但它会显示您通过 print 语句传递给它的任何内容。Rails.logger 返回它写入日志的值,所以它确实就是这么简单。