Class: Arrolio::Logger

Inherits:
Object
  • Object
show all
Defined in:
lib/arrolio/logger.rb

Overview

Structured logging facade. Replaces scattered warn calls with level-filtered, silencable output. Default level :warn keeps production rendering quiet; set Arrolio::Logger.level = :debug or ARROOLIO_LOG_LEVEL=debug to restore tracing during development.

Constant Summary collapse

LEVELS =
{ debug: 0, info: 1, warn: 2, error: 3 }.freeze
DEFAULT_LEVEL =
:warn

Class Attribute Summary collapse

Class Method Summary collapse

Class Attribute Details

.levelObject

Returns the value of attribute level.



17
18
19
# File 'lib/arrolio/logger.rb', line 17

def level
  @level
end

.targetObject

Returns the value of attribute target.



16
17
18
# File 'lib/arrolio/logger.rb', line 16

def target
  @target
end

Class Method Details

.level_nameObject



23
24
25
# File 'lib/arrolio/logger.rb', line 23

def level_name
  LEVELS.key(@level) || DEFAULT_LEVEL
end

.reset!Object

Reset to defaults — used by specs and between pipeline runs.



34
35
36
37
# File 'lib/arrolio/logger.rb', line 34

def reset!
  @level = LEVELS.fetch(DEFAULT_LEVEL)
  @target = $stderr
end