Module: Logasm::Adapters

Defined in:
lib/logasm/adapters.rb,
lib/logasm/adapters/stdout_adapter.rb,
lib/logasm/adapters/stdout_json_adapter.rb

Defined Under Namespace

Classes: StdoutAdapter, StdoutJsonAdapter

Constant Summary collapse

LOG_LEVELS =
%w(debug info warn error fatal unknown).freeze

Class Method Summary collapse

Class Method Details

.get(type, service_name, arguments) ⇒ Object



5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
# File 'lib/logasm/adapters.rb', line 5

def self.get(type, service_name, arguments)
  adapter =
    if type == 'stdout'
      if arguments.fetch(:json, false)
        require_relative 'adapters/stdout_json_adapter'
        StdoutJsonAdapter
      else
        require_relative 'adapters/stdout_adapter'
        StdoutAdapter
      end
    else
      raise "Unsupported logger: #{type}"
    end
  level = LOG_LEVELS.index(arguments.fetch(:level, 'debug'))
  adapter.new(level, service_name, arguments)
end