Class: WeatherSage::CLI::Env::Log

Inherits:
Logger
  • Object
show all
Defined in:
lib/weather-sage/cli/env/log.rb

Overview

Create Logger from environment variables.

Constant Summary collapse

DEFAULT_LEVEL =

Default log level.

'WARN'

Instance Method Summary collapse

Constructor Details

#initialize(env) ⇒ Log

Create Logger from environment variables.

The following environment variables are supported:

  • WEATHER_SAGE_LOG_LEVEL: Log level. One of “fatal”, “error”, “warning”, “info”, or “debug”. Defaults to “warn”.

  • WEATHER_SAGE_LOG_PATH: Path to log file. Defaults to standard error.



23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
# File 'lib/weather-sage/cli/env/log.rb', line 23

def initialize(env)
  # get log level (default to "warn" if unspecified)
  log_level = (env.get('LOG_LEVEL', DEFAULT_LEVEL)).upcase

  # create logger from log path (default to STDERR)
  super(env.get('LOG_PATH', STDERR))

  # set log level (default to WARN)
  self.level = ::Logger.const_get(log_level)

  # log level
  info('Env::Log#initialize') do
    'level = %p' % [log_level]
  end
end