Sha256: d62f907d0b45048ad55c7e5f8a55497510b0208cc6c44133c5440ae78b6bcb25

Contents?: true

Size: 799 Bytes

Versions: 7

Compression:

Stored size: 799 Bytes

Contents

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

7 entries across 7 versions & 2 rubygems

Version Path
auser-poolparty-0.2.2 lib/poolparty/pool/loggable.rb
auser-poolparty-0.2.3 lib/poolparty/pool/loggable.rb
auser-poolparty-0.2.4 lib/poolparty/pool/loggable.rb
auser-poolparty-0.2.5 lib/poolparty/pool/loggable.rb
auser-poolparty-0.2.6 lib/poolparty/pool/loggable.rb
auser-poolparty-0.2.8 lib/poolparty/pool/loggable.rb
poolparty-0.2.6 lib/poolparty/pool/loggable.rb