require 'logger' module RosettaQueue class MissingLogger < ::StandardError; end def self.logger=(new_logger) @logger = new_logger end def self.logger return @logger if @logger raise MissingLogger, "No logger has been set for RosettaQueue. Please define one with RosettaQueue.logger=." end end module RosettaQueue class Logger < ::Logger def format_message(severity, timestamp, progname, msg) "[#{timestamp.to_formatted_s(:db)}] #{severity} -- : #{msg}\n" end end end