Class: AmoebaDeployTools::Logger

Inherits:
Logger
  • Object
show all
Defined in:
lib/amoeba_deploy_tools/logger.rb

Defined Under Namespace

Modules: Colors Classes: SimpleFormatter

Constant Summary collapse

@@instance =
self.new(STDOUT)

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(logdev) ⇒ Logger

Returns a new instance of Logger.



52
53
54
55
56
# File 'lib/amoeba_deploy_tools/logger.rb', line 52

def initialize(logdev)
  super

  @formatter = SimpleFormatter.new
end

Class Method Details

.instanceObject



60
61
62
# File 'lib/amoeba_deploy_tools/logger.rb', line 60

def self.instance
  return @@instance
end

Instance Method Details

#format_message(level, *args) ⇒ Object



38
39
40
41
42
43
44
45
46
47
48
49
50
# File 'lib/amoeba_deploy_tools/logger.rb', line 38

def format_message(level, *args)
  if Logger::Colors::SCHEMA[@logdev.dev]
    color = begin
      Logger::Colors.const_get \
        Logger::Colors::SCHEMA[@logdev.dev][Logger.const_get(level.sub "ANY","UNKNOWN")].to_s.upcase
    rescue NameError
      "0;0"
    end
    "\e[#{ color }m#{ super(level, *args) }\e[0;0m"
  else
    super(level, *args)
  end
end