Sha256: 21f96f159badb48e3ba1dcc498cace95c117ae80437bc60dd4c277d315e52449

Contents?: true

Size: 776 Bytes

Versions: 7

Compression:

Stored size: 776 Bytes

Contents

require 'rubygems'
require 'tagged_logger'
require 'logger'

puts "\n<<<#{File.basename(__FILE__, ".rb")}>>> \n".upcase

class LogFoo
  def foo
    logger.info("#{self.class}#foo")
  end
end

module Network
  Ftp = Class.new LogFoo
  Http = Class.new LogFoo
  Sockets = Class.new LogFoo
end
include Network

def run
  [Network::Ftp, Network::Http, Network::Sockets, LogFoo].each { |c| c.new.foo }
end

TaggedLogger.rules do
  stdout = Logger.new(STDOUT)
  puts "- Only logging from within classes Ftp, Http and Sockets will be shown in output (no LogFoo):"
  info [Ftp, Http, Sockets], :to => stdout
  run
  puts "\n- Same result, but regex syntax:"
  info /(Ftp|Http|Sockets)/, :to => stdout
  run
  puts "\n- Or even shorter:"
  info /Network::/, :to => stdout
  run
end 


Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
tagged_logger-0.4.5 examples/one_log_per_classes.rb
tagged_logger-0.4.2 examples/one_log_per_classes.rb
tagged_logger-0.4.0 examples/one_log_per_classes.rb
tagged_logger-0.3.3 examples/one_log_per_classes.rb
tagged_logger-0.3.2 examples/one_log_per_classes.rb
tagged_logger-0.3.1 examples/one_log_per_classes.rb
tagged_logger-0.3.0 examples/one_log_per_classes.rb