lib/r10k/logging.rb in r10k-1.0.0rc2 vs lib/r10k/logging.rb in r10k-1.0.0rc3

- old
+ new

@@ -5,10 +5,12 @@ module R10K::Logging include Log4r + LOG_LEVELS = %w{DEBUG2 DEBUG1 DEBUG INFO NOTICE WARN ERROR FATAL} + def logger_name self.class.to_s end def logger @@ -20,24 +22,41 @@ end class << self include Log4r + def levels + @levels ||= LOG_LEVELS.each.inject({}) do |levels, k| + levels[k] = Log4r.const_get(k) + levels + end + end + + def parse_level(val) + begin + Integer(val) + rescue + levels[val.upcase] + end + end + def included(klass) unless @log4r_loaded - Configurator.custom_levels(*%w{DEBUG2 DEBUG1 DEBUG INFO NOTICE WARN ERROR FATAL}) + Configurator.custom_levels(*LOG_LEVELS) Logger.global.level = Log4r::ALL @log4r_loaded = true end end def level @level || Log4r::WARN # Default level is WARN end def level=(val) - outputter.level = val - @level = val + level = parse_level val + raise "Invalid log level: #{val}" unless level + outputter.level = level + @level = level end def formatter @formatter ||= Log4r::PatternFormatter.new(:pattern => '[%C - %l] %m') end