Class: CerberusUtils::DefaultLogger

Inherits:
Object
  • Object
show all
Defined in:
lib/cerberus_utils/default_logger.rb

Overview

Instantiated by the Log singleton can be replaced by the user provided the Logger supports the four log level outputs

Instance Method Summary collapse

Constructor Details

#initializeDefaultLogger

Init the default logger



15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
# File 'lib/cerberus_utils/default_logger.rb', line 15

def initialize
  @logger = Logger.new STDOUT
  # log level should be configurable
  @logger.level = Logger::DEBUG
  @logger.formatter = proc do |severity, datetime, progname, msg|

    severityFormatted = case severity
      when "ERROR"
        "\e[31m#{severity}\e[0m"
      when "WARN"
        "\e[33m#{severity}\e[0m"
      when "DEBUG"
        "\e[37m#{severity}\e[0m"
      else
        "#{severity}"
    end

    "#{datetime.strftime('%Y-%m-%d %H:%M:%S.%L')} #{severityFormatted}: #{msg}\n"
  end
end

Instance Method Details

#debug(msg) ⇒ Object

Log a debug message to the default logger



60
61
62
# File 'lib/cerberus_utils/default_logger.rb', line 60

def debug(msg)
  @logger.debug(msg)
end

#error(msg) ⇒ Object

Log a error message to the default logger



39
40
41
# File 'lib/cerberus_utils/default_logger.rb', line 39

def error(msg)
  @logger.error(msg)
end

#info(msg) ⇒ Object

Log a info message to the default logger



53
54
55
# File 'lib/cerberus_utils/default_logger.rb', line 53

def info(msg)
  @logger.info(msg)
end

#warn(msg) ⇒ Object

Log a warning message to the default logger



46
47
48
# File 'lib/cerberus_utils/default_logger.rb', line 46

def warn(msg)
  @logger.warn(msg)
end