Method: Lumber::LevelUtil#activate_levels

Defined in:
lib/lumber/level_util.rb

#activate_levelsObject

Activates previously set logger level overrides. Should be called at code entry points, e.g. an ApplicationController before_filter, or Resque::Worker callback



53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
# File 'lib/lumber/level_util.rb', line 53

def activate_levels
  levels = get_levels
  if levels.size == 0
    restore_levels
  else
    
    levels = expand_heirarchy(levels)
    backup_levels(levels.keys)
    
    levels.each do |name, level|
      level_val = Log4r::LNAMES.index(level)
      outputter = Log4r::Outputter[name]
      if outputter
        outputter.level = level_val if level_val && outputter.level != level_val
      else
        logger = Lumber.find_or_create_logger(name)
        logger.level = level_val if level_val && logger.level != level_val
      end
    end
  end
end