class Aruba::ArubaLogger

Logger

@private

Attributes

mode[R]

Public Class Methods

new(opts = {}) click to toggle source

Create logger

@param [Logger] logger (::Logger.new( $stderr ))

The logger with should be used to output data
# File lib/aruba/platforms/aruba_logger.rb, line 15
def initialize(opts = {})
  @mode = opts.fetch(:default_mode, :info)
end

Public Instance Methods

logger() click to toggle source

Create new logger on every invocation to make capturing $stderr possible

# File lib/aruba/platforms/aruba_logger.rb, line 31
def logger
  l = ::Logger.new($stderr)

  case mode
  when :debug
    l.level = ::Logger::DEBUG
    format_debug(l)
  when :silent
    l.level = 9_999
  when :info
    l.level = ::Logger::INFO
    format_standard(l)
  else
    l.level = ::Logger::INFO
    format_standard(l)
  end

  l
end
mode=(m) click to toggle source

Change mode of logger: :debug, … + Change the output format

@param [Symbol] m

the mode: :debug, ...
# File lib/aruba/platforms/aruba_logger.rb, line 63
def mode=(m)
  @mode = m.to_sym
end
mode?(m) click to toggle source

Is mode?

@param [String, Symbol] m

Mode to compare with
# File lib/aruba/platforms/aruba_logger.rb, line 55
def mode?(m)
  mode == m.to_sym
end

Private Instance Methods

format_debug(l) click to toggle source
# File lib/aruba/platforms/aruba_logger.rb, line 69
def format_debug(l)
  l.formatter = proc { |severity, datetime, progname, msg|
    format("%s %s %s: %s\n", datetime, severity, progname, msg)
  }
end
format_standard(l) click to toggle source
# File lib/aruba/platforms/aruba_logger.rb, line 75
def format_standard(l)
  l.formatter = proc { |severity, datetime, _, msg|
    format("%s %s: %s\n", datetime, severity, msg)
  }
end