class Spacebunny::Logger

Log on multiple outputs at the same time

Usage example:

log_file = File.open(“log/debug.log”, “a”) Logger.new Spacebunny::Logger.new(STDOUT, log_file)

Public Class Methods

new(*args) click to toggle source
# File lib/spacebunny/logger.rb, line 10
def initialize(*args)
  @streams = []
  args.each do |a|
    case a
      when String
        # This is a file path
        @streams << File.open(a, 'a+')
      else
        @streams << a
    end
  end
end

Public Instance Methods

close() click to toggle source
# File lib/spacebunny/logger.rb, line 30
def close
  @streams.each(&:close)
end
write(*args) click to toggle source
# File lib/spacebunny/logger.rb, line 23
def write(*args)
  @streams.each do |lo|
    lo.write(*args)
    lo.flush
  end
end