class Metrux::ConfigBuilders::Logger
Constants
- DEFAULT_LOG_LEVEL
- DEFAULT_LOG_PATH
- LOG_FILE_KEY
- LOG_LEVEL_KEY
Attributes
yaml[R]
Public Class Methods
new(yaml)
click to toggle source
# File lib/metrux/config_builders/logger.rb, line 10 def initialize(yaml) @yaml = yaml end
Public Instance Methods
build()
click to toggle source
# File lib/metrux/config_builders/logger.rb, line 14 def build ::Logger.new(log_file).tap do |logger| logger.level = log_level logger.formatter = ::Logger::Formatter.new end rescue => e Kernel.warn( '[WARNING] Cound\'t configure Metrux\'s logger. '\ "#{e.class}: #{e.message}" ) nil end
Private Instance Methods
log_file()
click to toggle source
# File lib/metrux/config_builders/logger.rb, line 31 def log_file from_config = (ENV[LOG_FILE_KEY] || yaml[:log_file]).presence return DEFAULT_LOG_PATH if from_config.blank? from_config == 'STDOUT'.freeze ? STDOUT : from_config end
log_level()
click to toggle source
# File lib/metrux/config_builders/logger.rb, line 39 def log_level ::Logger.const_get( ( ENV[LOG_LEVEL_KEY] || yaml[:log_level] || DEFAULT_LOG_LEVEL ).to_s.upcase ) end