class EventLogger::Config

Attributes

logger[R]

Public Class Methods

new() click to toggle source
# File lib/event_logger/config.rb, line 10
def initialize
  self.logger = ENV.fetch('EVENT_LOGGER_LOGGER', :logger).to_sym
end

Public Instance Methods

logger=(value) click to toggle source
# File lib/event_logger/config.rb, line 14
def logger=(value)
  if value.is_a?(Symbol) && !%i[logger stdout].include?(value)
    raise ArgumentError, "Unknown logger type: #{value}"
  end

  @logger = value
end
logger_instance() click to toggle source
# File lib/event_logger/config.rb, line 22
def logger_instance
  if logger == :logger
    EventLogger::Output::Logger.new(Logger.new(STDOUT))
  elsif logger == :stdout
    EventLogger::Output::IO.new($stdout)
  elsif logger.respond_to?(:<<)
    EventLogger::Output::IO.new(logger)
  else
    EventLogger::Output::Logger.new(logger)
  end
end