module Majic::Logging

Constants

DefaultNameCutoff
LevelColors
Levels
UnknownLevelError

Attributes

level[RW]
mutex[R]
name_cutoff[W]
stream[RW]

Public Class Methods

included(klass) click to toggle source
# File library/majic/logging.rb, line 16
def included klass
  klass.metaclass.send :attr_accessor, :logger
  klass.logger = Logger.new klass
end
level=(level) click to toggle source
# File library/majic/logging.rb, line 28
def level= level
  raise UnknownLevelError unless Levels.include? level
  @level = level
end
level_index() click to toggle source
# File library/majic/logging.rb, line 33
def level_index
  Levels.index level
end
name_cutoff() click to toggle source
# File library/majic/logging.rb, line 25
def name_cutoff; @name_cutoff or DefaultNameCutoff end
name_cutoff?() click to toggle source
# File library/majic/logging.rb, line 26
def name_cutoff?; !!@name_cutoff end

Public Instance Methods

log(*messages) click to toggle source
# File library/majic/logging.rb, line 38
def log *messages
  logger_instance = (metaclass.respond_to?(:logger) && metaclass.logger or self.class.logger)
  
  if messages.empty?
    logger_instance
  else
    logger_instance.debug *messages
  end
end