Posted on 2010-02-14 02:24
leekiang 阅读(813)
评论(0) 编辑 收藏 所属分类:
ruby
1,要在控制台输出log,在environment.rb里加:
config.log_level = :debug
config.logger = Logger.new(STDERR)
同时在controller里加一行logger.info 'test'
成功了,但奇怪的是log_level设为dubug和info没有区别
2, http://wordpress.javaeye.com/blog/134544
rails的日志文件存在于app/log下面。对于不同环境产生的日志内容会有差别。development下会把每次对数据库的访问代码包含进去,production会省略,不过也有很多的内容。
如果只希望在production环境下,输入少量的log,
则只需要在config/environments/production.rb中更改:
config.log_level = :warn附带log level:Rails可以通过选择不同的log
level来控制log文件的输出,可以使用的log level有:debug, :info,
:warn, :error, :fatal。 :debug level提供最详细的log,
可以将每一条sql都记录下来。:info
level是production环境下的默认设置,不会写出sql的执行情况,但也会很详细,如果是ActiveMailer,它会记录下每封信的内容,Log文件内容就是快速增长。为了避免Log把空间塞满的情况发生,要注意定期清除Log,另外是选择:warn
level等log level, 只记录重要的信息.
是否可以这么说:environment.rb对三个环境都生效,production.rb只对生产环境有效.
3,在单元测试类的方法里加了logger.dubug 'test',执行测试时报错,后改为
RAILS_DEFAULT_LOGGER.debug 'test' 成功。
Rails Logging Tips —— Rails写日志的提示http://www.cgpad.com/SPAN/articles_show/167
http://hlee.javaeye.com/blog/358516