我已閱讀文檔guide和class。 我想創建一個記錄器,每天記錄日誌信息,讓我們說一週後,每次都會自動刪除最舊的日誌信息。如何初始化軌道3中的記錄器?
logfile = File.open(RAILS_ROOT + '/log/'+ (Date.today << 1).to_s + '_custom.log', 'a') #create log file
logfile.sync = true #automatically flushes data to file
CUSTOM_LOGGER = CustomLogger.new(logfile, 'daily') #constant accessible anywhere
另外,我希望創建一個自定義日誌記錄,那麼例如一些看起來像這樣(格式):
class MyLogger < Logger
def format_message(severity, timestamp, progname, msg)
"#{timestamp} : #{msg}\n"
end
end
所以基本上,我想有一個更好的主意在哪裏將所有內容正確放置在哪個目錄下例如,在MyLogger應該邏輯性......(地方?一個助手?或在應用程序/配置/?
是that來實現這一點,我通過把一切都使之成爲有效的方法是什麼?
config/initializers和創建一個名爲my_logger.rb的文件我仍然堅持刪除/管理日誌文件
服務器是否處理該部分的日誌輪換(我知道有一些來自linux操作系統的logrotation )?或Rails可以在內部處理?
謝謝你的回答。我同意你的第一個答案,這是我做到的方式。其次,我正考慮使用linux的logrotation(因爲我的服務器運行它)並在網上找到體面的信息以便輕鬆實現。 – fneron