Module: IuguLogger::Severity

Defined in:
lib/iugu_logger/severity.rb

Overview

Custom severity levels — includes :note (between :info and :warn) for business-critical events that should NOT be filtered as framework noise.

Spec: IUGU_LOGGING_STANDARD.md §2.1 (custom :note severity pattern)

Constant Summary collapse

TRACE =
0
DEBUG =
1
INFO =
2
NOTE =
3
WARN =
4
ERROR =
5
FATAL =
6
NAMES =
{
  TRACE => 'trace',
  DEBUG => 'debug',
  INFO  => 'info',
  NOTE  => 'note',
  WARN  => 'warn',
  ERROR => 'error',
  FATAL => 'fatal'
}.freeze
BY_NAME =
NAMES.each_with_object({}) { |(num, name), h| h[name.to_sym] = num }.freeze

Class Method Summary collapse

Class Method Details

.from_name(name) ⇒ Object

Integer severity for the given name (string or symbol). nil if unknown.



32
33
34
# File 'lib/iugu_logger/severity.rb', line 32

def from_name(name)
  BY_NAME[name.to_sym]
end

.name_for(level) ⇒ Object



36
37
38
# File 'lib/iugu_logger/severity.rb', line 36

def name_for(level)
  NAMES[level]
end

.valid?(name) ⇒ Boolean

Returns:

  • (Boolean)


40
41
42
# File 'lib/iugu_logger/severity.rb', line 40

def valid?(name)
  BY_NAME.key?(name.to_sym)
end