class MovieOrganizer::Logger
Attributes
log_provider[RW]
Public Class Methods
new(provider = default_logger)
click to toggle source
# File lib/movie_organizer/logger.rb, line 12 def initialize(provider = default_logger) @log_provider = provider end
Public Instance Methods
log_exception(e, data = {})
click to toggle source
# File lib/movie_organizer/logger.rb, line 16 def log_exception(e, data = {}) msg = "EXCEPTION : #{e.class.name} : #{e.message}" msg += "\n data : #{data.inspect}" if data && !data.empty? msg += "\n #{e.backtrace[0, 6].join("\n ")}" log_provider.error(msg) end
method_missing(meth, *args, &block)
click to toggle source
Calls superclass method
# File lib/movie_organizer/logger.rb, line 23 def method_missing(meth, *args, &block) if log_provider.respond_to?(meth) log_provider.send(meth, *args, &block) else super end end
respond_to?(meth, include_private = false)
click to toggle source
Calls superclass method
# File lib/movie_organizer/logger.rb, line 31 def respond_to?(meth, include_private = false) if log_provider.respond_to?(meth) true else super end end
Private Instance Methods
default_logger()
click to toggle source
# File lib/movie_organizer/logger.rb, line 41 def default_logger logger = ::Logger.new(STDOUT) logger.formatter = proc do |_, _, _, msg| "#{msg}\n" end logger end