2013-02-01 52 views
2

我正在創建一個新的記錄器,並希望將日誌級別配置爲等於Rails配置值。如何將日誌級別符號轉換爲常量?

@logger = Logger.new(STDOUT) 
@logger.level = Rails.configuration.log_level 

我得到一個錯誤,因爲級別期望整數和log_level是一個符號(:信息)。如何將信息轉換爲Logger所能理解的內容(Logger :: INFO)?

我試着使用:

@logger.level = "Logger::#{Rails.configuration.log_level.to_s.upcase}".constantize 

但constantize無法識別符號:

NameError: uninitialized constant Logger::INFO 

回答

3

只是覺得:

Logger.const_get(Rails.configuration.log_level.to_s.upcase)