Class: Bitlogger::IoLogger
- Inherits:
-
Object
- Object
- Bitlogger::IoLogger
- Defined in:
- lib/bitlogger/io_logger.rb
Instance Method Summary collapse
-
#initialize(formatter, additional, io) ⇒ IoLogger
constructor
A new instance of IoLogger.
- #log(msgs) ⇒ Object
Constructor Details
#initialize(formatter, additional, io) ⇒ IoLogger
Returns a new instance of IoLogger.
3 4 5 6 7 8 |
# File 'lib/bitlogger/io_logger.rb', line 3 def initialize(formatter, additional, io) raise ArgumentError, "Io has to respond to :puts and :flush" unless io_valid?(io) @formatter = formatter @additional = additional @io = io end |
Instance Method Details
#log(msgs) ⇒ Object
11 12 13 14 15 16 17 18 |
# File 'lib/bitlogger/io_logger.rb', line 11 def log(msgs) msgs = [msgs] unless msgs.is_a?(Array) msgs.each { |msg| @io.puts(@formatter.format_hash(@additional.merge(msg))) } @io.flush rescue => e STDERR.puts("Error: #{e.class.name}, #{e.}") return false end |