class MCollective::Logger::Console_logger - mcollective version 2.12.5

# class MCollective::Logger::Console_logger

Implements a syslog based logger using the standard ruby syslog class

### Public Instance Methods

color(level) click to toggle source

Set some colors for various logging levels, will honor the color configuration option and return nothing if its configured not to

       # File lib/mcollective/logger/console_logger.rb
    39 def color(level)
    40   colorize = Config.instance.color
    41
    42   colors = {:error => Util.color(:red),
    43             :fatal => Util.color(:red),
    44             :warn  => Util.color(:yellow),
    45             :info  => Util.color(:green),
    46             :reset => Util.color(:reset)}
    47
    48   if colorize
    49     return colors[level] || ""
    50   else
    51     return ""
    52   end
    53 end

colorize(level, msg) click to toggle source

Helper to return a string in specific color

       # File lib/mcollective/logger/console_logger.rb
    56 def colorize(level, msg)
    57   "%s%s%s" % [ color(level), msg, color(:reset) ]
    58 end

log(level, from, msg, normal_output=STDERR, last_resort_output=STDERR) click to toggle source

       # File lib/mcollective/logger/console_logger.rb
    24 def log(level, from, msg, normal_output=STDERR, last_resort_output=STDERR)
    25   if @known_levels.index(level) >= @known_levels.index(@active_level)
    26     time = Time.new.strftime("%Y/%m/%d %H:%M:%S")
    27
    28     normal_output.puts("%s %s: %s %s" % [colorize(level, level), time, from, msg])
    29   end
    30 rescue
    31   # if this fails we probably cant show the user output at all,
    32   # STDERR it as last resort
    33   last_resort_output.puts("#{level}: #{msg}")
    34 end

set_logging_level(level) click to toggle source

       # File lib/mcollective/logger/console_logger.rb
    12 def set_logging_level(level)
    13   # nothing to do here, we ignore high levels when we log
    14 end

start() click to toggle source

       # File lib/mcollective/logger/console_logger.rb
     5 def start
     6   set_level(:info)
     7
     8   config = Config.instance
     9   set_level(config.loglevel.to_sym) if config.configured
    10 end

valid_levels() click to toggle source

       # File lib/mcollective/logger/console_logger.rb
    16 def valid_levels
    17   {:info  => :info,
    18    :warn  => :warning,
    19    :debug => :debug,
    20    :fatal => :crit,
    21    :error => :err}
    22 end