module Logging
enable logging in classes through 'include Logging'
Public Class Methods
configure_logger_for(classname)
click to toggle source
# File lib/evoc/logger.rb, line 16 def configure_logger_for(classname) logger = Logger.new('evoc.log','daily') logger.progname = classname logger.level = const_get('Logger::'+@logger_level.upcase) logger end
logger_for(classname)
click to toggle source
# File lib/evoc/logger.rb, line 12 def logger_for(classname) @loggers[classname] ||= configure_logger_for(classname) end
set_level(level)
click to toggle source
# File lib/evoc/logger.rb, line 23 def set_level(level) possible_levels = %w(debug info warn error info) if possible_levels.include?(level) STDERR.puts "Logging level has been set to '#{level}' for output to evoc.log" @loggers.each {|l| l.level = const_get('Logger::'+level.upcase)} @logger_level = level else STDERR.puts "Unable to set logger level to #{level}, possible values are #{possible_levels}. Defaulting to 'info'." end end
Public Instance Methods
logger()
click to toggle source
# File lib/evoc/logger.rb, line 3 def logger @logger ||= Logging.logger_for(self.class.name) end