Parent

AMQP::Logger

@private

Attributes

prop[R]

Public Class Methods

disable() click to toggle source
    # File lib/amqp/deprecated/logger.rb, line 88
88:     def self.disable
89:       @disabled = true
90:     end
disabled?() click to toggle source
    # File lib/amqp/deprecated/logger.rb, line 80
80:     def self.disabled?
81:       !!@disabled
82:     end
enable() click to toggle source
    # File lib/amqp/deprecated/logger.rb, line 84
84:     def self.enable
85:       @disabled = false
86:     end
new(*args, &block) click to toggle source
    # File lib/amqp/deprecated/logger.rb, line 6
 6:     def initialize(*args, &block)
 7:       opts = args.pop if args.last.is_a? Hash
 8:       opts ||= {}
 9: 
10:       printer(block) if block
11: 
12:       @prop = opts
13:       @tags = ([:timestamp] + args).uniq
14:     end
printer(&block) click to toggle source
    # File lib/amqp/deprecated/logger.rb, line 75
75:     def self.printer &block
76:       @printer = block if block
77:       @printer
78:     end

Public Instance Methods

log(severity, *args) click to toggle source
    # File lib/amqp/deprecated/logger.rb, line 19
19:     def log(severity, *args)
20:       opts = args.pop if args.last.is_a? Hash and args.size != 1
21:       opts ||= {}
22:       opts = @prop.clone.update(opts)
23: 
24:       data = args.shift
25: 
26:       data = {:type => :exception,
27:               :name => data.class.to_s.intern,
28:               :backtrace => data.backtrace,
29:               :message => data.message} if data.is_a? Exception
30: 
31:       (@tags + args).each do |tag|
32:         tag = tag.to_sym
33:         case tag
34:         when :timestamp
35:           opts.update :timestamp => Time.now
36:         when :hostname
37:           @hostname ||= { :hostname => `hostname`.strip }
38:           opts.update @hostname
39:         when :process
40:           @process_id ||= { :process_id => Process.pid,
41:                             :process_name => $0,
42:                             :process_parent_id => Process.ppid,
43:                             :thread_id => Thread.current.object_id }
44:           opts.update :process => @process_id
45:         else
46:           (opts[:tags] ||= []) << tag
47:         end
48:       end
49: 
50:       opts.update(:severity => severity,
51:                   :msg => data)
52: 
53:       print(opts)
54:       unless Logger.disabled?
55:         AMQP::Channel.new.fanout('logging', :durable => true).publish Marshal.dump(opts)
56:       end
57: 
58:       opts
59:     end
Also aliased as: method_missing
method_missing(severity, *args) click to toggle source
Alias for: log
printer(data = nil, &block) click to toggle source
Alias for: print

Disabled; run with --debug to generate this.

[Validate]

Generated with the Darkfish Rdoc Generator 1.1.6.