Module: Loglevel

Extended by:
Loglevel
Included in:
Loglevel
Defined in:
lib/loglevel.rb,
lib/loglevel/name.rb,
lib/loglevel/version.rb,
lib/loglevel/settings.rb,
lib/loglevel/constants.rb,
lib/loglevel/exception.rb,
lib/loglevel/loggable_class.rb,
lib/loglevel/loggable_classes.rb,
lib/loglevel/loggable_class/level.rb,
lib/loglevel/loggable_class/smart_logger.rb

Overview

:reek:TooManyConstants { max_constants: 7 }

Defined Under Namespace

Modules: LoggableClasses, Settings Classes: Exception, LoggableClass, Name

Constant Summary collapse

VERSION =
'1.1.0'.freeze
LOGLEVELS =
%w[DEBUG INFO WARN ERROR FATAL UNKNOWN].freeze
ENV_VAR_LEVEL =
'LOGLEVEL'.freeze
ENV_VAR_LOGGER =
'LOGGER'.freeze
ENV_VAR_DEVICE =
'LOGDEVICE'.freeze
ENV_VAR_CLASSES =
'LOGCLASSES'.freeze
SCOPE_RESOLUTION_OPERATOR =
SRO = '::'.freeze

Instance Method Summary collapse

Instance Method Details

#debugObject



14
15
16
# File 'lib/loglevel.rb', line 14

def debug
  loggable_classes.map(&:debug)
end

#deviceObject



18
19
20
# File 'lib/loglevel.rb', line 18

def device
  @device ||= ENV.fetch Loglevel::ENV_VAR_DEVICE, STDOUT
end

#loggable_classesObject



22
23
24
# File 'lib/loglevel.rb', line 22

def loggable_classes
  @loggable_classes ||= LoggableClasses.clone # More testable
end

#setupObject



10
11
12
# File 'lib/loglevel.rb', line 10

def setup
  loggable_classes.each(&:check)
end