Class: Logged::Logger

Inherits:
Object
  • Object
show all
Includes:
TaggedLogging
Defined in:
lib/logged/logger.rb

Overview

Logger wrapping a component

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods included from TaggedLogging

#current_tags, #flush, #pop_tags, #push_tags, #tagged

Constructor Details

#initialize(loggers, component, formatter) ⇒ Logger

Returns a new instance of Logger.



11
12
13
14
15
16
# File 'lib/logged/logger.rb', line 11

def initialize(loggers, component, formatter)
  @loggers   = loggers
  @component = component
  @formatter = formatter
  @enabled   = true
end

Instance Attribute Details

#componentObject (readonly)

Returns the value of attribute component.



9
10
11
# File 'lib/logged/logger.rb', line 9

def component
  @component
end

#loggersObject (readonly)

Returns the value of attribute loggers.



9
10
11
# File 'lib/logged/logger.rb', line 9

def loggers
  @loggers
end

Instance Method Details

#<<(_msg) ⇒ Object



60
# File 'lib/logged/logger.rb', line 60

def <<(_msg); end

#add(severity, message = nil, progname = nil) ⇒ Object Also known as: log



18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
# File 'lib/logged/logger.rb', line 18

def add(severity, message = nil, progname = nil)
  return unless enabled?

  message = yield    if block_given? && message.blank?
  message = progname if message.blank?

  data, event = extract_data_and_event(message)

  return if data.blank?

  level = Logged.level_to_sym(severity)

  @loggers.each do |logger, options|
    next unless logger.send("#{level}?")

    add_to_logger(level, event, data, logger, options)
  end
end

#closeObject



50
51
52
53
54
# File 'lib/logged/logger.rb', line 50

def close
  @loggers.keys.each do |logger|
    logger.close if logger.respond_to?(:close)
  end
end

#datetime_formatObject



56
# File 'lib/logged/logger.rb', line 56

def datetime_format; end

#datetime_format=(_format) ⇒ Object



58
# File 'lib/logged/logger.rb', line 58

def datetime_format=(_format); end

#disable!Object



74
75
76
# File 'lib/logged/logger.rb', line 74

def disable!
  self.enabled = false
end

#enable!Object



70
71
72
# File 'lib/logged/logger.rb', line 70

def enable!
  self.enabled = true
end

#enabled=(enable) ⇒ Object



66
67
68
# File 'lib/logged/logger.rb', line 66

def enabled=(enable)
  @enabled = !!enable
end

#enabled?Boolean

Returns:

  • (Boolean)


62
63
64
# File 'lib/logged/logger.rb', line 62

def enabled?
  @enabled
end