2011-05-16 107 views
36

我想弄清楚如何使用導軌3的記錄器。我需要登錄到文件沒有它在控制檯中,但我只是不知道如何設置它,然後,如何寫入日誌。我嘗試了rails文檔,但他們沒有真正說清楚。在導軌3設置記錄器3

回答

80

默認情況下,Rails應該記錄到項目的log目錄中特定於環境的日誌文件。這將取決於你在運行的環境或者叫做test.logdevelopment.log,或production.log

您可直接登錄使用Rails.logger對象Rails的記錄器:

Rails.logger.info "My info message" 
Rails.logger.debug "My debugging message" 
Rails.logger.warn "My warning message" 

習慣使用Ruby's standard logging class的Rails ,但它現在使用ActiveSupport::BufferedLogger。 (官方Ruby on Rails Guides在他們說「Rails使用Ruby的標準記錄器來寫日誌信息」時是不正確的)。

+3

感謝十億倍。認真地救了我今天 – 2011-05-16 18:03:34

+0

我相信它是使用ActiveSupport :: BufferedLogger ...只是看看Rails.logger.class – Duke 2011-06-11 04:34:32

+0

@Duke你是絕對正確的。看起來官方的Rails指南是不正確的。 – 2011-06-11 16:02:41