Posted on 2010-02-14 02:24
leekiang 閱讀(820)
評論(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