Class: Buzztools::MultiLogger
- Inherits:
-
Logger
- Object
- Logger
- Buzztools::MultiLogger
- Defined in:
- lib/buzztools/extras/logging.rb
Overview
The default level is DEBUG to pass all output to the sub-loggers, but the sub-loggers level will also determine what is output to their destinations
Instance Attribute Summary collapse
-
#loggers ⇒ Object
readonly
Returns the value of attribute loggers.
Instance Method Summary collapse
- #<<(msg) ⇒ Object
- #add(severity, message = nil, progname = nil, &block) ⇒ Object (also: #log)
- #close ⇒ Object
-
#initialize(aLoggers) ⇒ MultiLogger
constructor
if !self.instance_methods.include?(:formatter) def formatter @formatter ||= Logger::Formatter.new end attr_writer :formatter end.
Constructor Details
#initialize(aLoggers) ⇒ MultiLogger
if !self.instance_methods.include?(:formatter) def formatter @formatter ||= Logger::Formatter.new end attr_writer :formatter end
17 18 19 20 21 |
# File 'lib/buzztools/extras/logging.rb', line 17 def initialize(aLoggers) super(nil) @level = Severity::DEBUG @loggers = aLoggers.is_a?(Array) ? aLoggers : [aLoggers] end |
Instance Attribute Details
#loggers ⇒ Object (readonly)
Returns the value of attribute loggers.
9 10 11 |
# File 'lib/buzztools/extras/logging.rb', line 9 def loggers @loggers end |
Instance Method Details
#<<(msg) ⇒ Object
34 35 36 37 38 |
# File 'lib/buzztools/extras/logging.rb', line 34 def <<(msg) @loggers.each do |lr| lr << msg end end |
#add(severity, message = nil, progname = nil, &block) ⇒ Object Also known as: log
23 24 25 26 27 28 29 30 |
# File 'lib/buzztools/extras/logging.rb', line 23 def add(severity, = nil, progname = nil, &block) return true if !@loggers severity ||= UNKNOWN @loggers.each do |lr| block_given? ? lr.add(severity, , progname, &block) : lr.add(severity, , progname) end true end |
#close ⇒ Object
40 41 42 43 44 |
# File 'lib/buzztools/extras/logging.rb', line 40 def close @loggers.each do |lr| lr.close end end |