class PierLogging::Helpers::EnvConfig

Public Class Methods

for(logger = nil, log_dir: 'log', log_file: PierLogging.logger_configuration.env) click to toggle source
# File lib/pier_logging/helpers/env_config.rb, line 4
def self.for(logger = nil, log_dir: 'log', log_file: PierLogging.logger_configuration.env)
  {
    enabled: log_enabled(logger),
    output: log_output(logger, log_dir, log_file),
    level: log_level(logger),
  }
end

Private Class Methods

enabled_env_var(logger) click to toggle source
# File lib/pier_logging/helpers/env_config.rb, line 32
def self.enabled_env_var(logger)
  ['LOG', logger ,'ENABLED'].compact.join('_').upcase
end
level_env_var(logger) click to toggle source
# File lib/pier_logging/helpers/env_config.rb, line 36
def self.level_env_var(logger)
  ['LOG', logger ,'LEVEL'].compact.join('_').upcase
end
log_enabled(logger) click to toggle source
# File lib/pier_logging/helpers/env_config.rb, line 20
def self.log_enabled(logger)
  ENV.fetch(enabled_env_var(logger), 'true') == 'true'
end
log_level(logger) click to toggle source
# File lib/pier_logging/helpers/env_config.rb, line 24
def self.log_level(logger)
  ENV.fetch(level_env_var(logger), 'info').upcase
end
log_output(logger, log_dir, log_file) click to toggle source
# File lib/pier_logging/helpers/env_config.rb, line 14
def self.log_output(logger, log_dir, log_file)
  return nil unless log_enabled(logger)
  log_output_env = ENV.fetch(output_env_var(logger), 'STDOUT').upcase
  log_output_env == 'STDOUT' ? STDOUT : output_file_name(log_dir, log_file)
end
output_env_var(logger) click to toggle source
# File lib/pier_logging/helpers/env_config.rb, line 28
def self.output_env_var(logger)
  ['LOG', logger ,'OUTPUT'].compact.join('_').upcase
end
output_file_name(log_dir, log_file) click to toggle source
# File lib/pier_logging/helpers/env_config.rb, line 40
def self.output_file_name(log_dir, log_file)
  [
    [ log_dir, log_file ].join('/'),
    'log'
  ].join('.')
end