Sha256: f8dc9b7590ebcef5eb4420b21b695e09c0d50a547b23bd7d6c6160597921d629

Contents?: true

Size: 866 Bytes

Versions: 16

Compression:

Stored size: 866 Bytes

Contents

=begin rdoc
  A logging class to allow us to log to locations
=end
class Loggable
  def initialize
    Logging.init :debug, :info, :warn, :error, :fatal
    
    self.class.loggers << file_logger
    file_logger.level = :warn

    self.class.loggers << stdout_logger
    stdout_logger.level = :info
  end
  def file_logger
    @file_logger ||= Logging.logger( ::File.join(Base.pool_logger_location, "pool_log.log"), logging_opts )
  end
  def stdout_logger
    @stdout_logger ||= Logging.logger(STDOUT, logging_opts.merge({:pattern => "%m\n"}))
  end
  def logging_opts
    {:pattern => "[%d] %-l : %m\n",
    :date_pattern => "%Y-%m-%d %H:%M:%S.%s"}
  end
  %w(info warn debug notice).each do |meth|
    define_method(meth.to_sym) do |*args|
      self.class.loggers.each {|l| l.send meth.to_sym, args}
    end
  end
  def self.loggers
    @loggers ||= []
  end
end

Version data entries

16 entries across 16 versions & 2 rubygems

Version Path
auser-poolparty-0.2.15 lib/poolparty/pool/loggable.rb
auser-poolparty-0.2.16 lib/poolparty/pool/loggable.rb
auser-poolparty-0.2.20 lib/poolparty/pool/loggable.rb
auser-poolparty-0.2.21 lib/poolparty/pool/loggable.rb
auser-poolparty-0.2.22 lib/poolparty/pool/loggable.rb
auser-poolparty-0.2.23 lib/poolparty/pool/loggable.rb
auser-poolparty-0.2.24 lib/poolparty/pool/loggable.rb
auser-poolparty-0.2.25 lib/poolparty/pool/loggable.rb
auser-poolparty-0.2.26 lib/poolparty/pool/loggable.rb
auser-poolparty-0.2.35 lib/poolparty/pool/loggable.rb
auser-poolparty-0.2.36 lib/poolparty/pool/loggable.rb
auser-poolparty-0.2.37 lib/poolparty/pool/loggable.rb
auser-poolparty-0.2.38 lib/poolparty/pool/loggable.rb
auser-poolparty-0.2.39 lib/poolparty/pool/loggable.rb
auser-poolparty-0.2.9 lib/poolparty/pool/loggable.rb
poolparty-0.2.18 lib/poolparty/pool/loggable.rb