| Class | RequestLog::Objects |
| In: |
lib/mongrel/debug.rb
lib/mongrel/debug.rb |
| Parent: | GemPlugin::Plugin"/handlers" |
# File lib/mongrel/debug.rb, line 121
121: def process(request,response)
122: begin
123: stats = Hash.new(0)
124: lengths = {}
125: begin
126: ObjectSpace.each_object do |o|
127: begin
128: if o.respond_to? :length
129: len = o.length
130: lengths[o.class] ||= Mongrel::Stats.new(o.class)
131: lengths[o.class].sample(len)
132: end
133: rescue Object
134: end
135:
136: stats[o.class] += 1
137: end
138: rescue Object # Ignore since ObjectSpace might not be loaded on JRuby
139: end
140:
141: stats.sort {|(k1,v1),(k2,v2)| v2 <=> v1}.each do |k,v|
142: if $last_stat
143: delta = v - $last_stat[k]
144: if v > 10 and delta != 0
145: if lengths[k]
146: $objects_out.printf "%d,%s,%d,%d,%d,%f,%f,%f\n", $run_count, k, $last_stat[k], v, delta,lengths[k].mean,lengths[k].sd,lengths[k].max
147: else
148: $objects_out.printf "%d,%s,%d,%d,%d,,,\n", $run_count, k, $last_stat[k], v, delta
149: end
150: end
151: end
152: end
153:
154: $run_count += 1
155: $last_stat = stats
156: rescue Object
157: STDERR.puts "object.log ERROR: #$!"
158: end
159: end
# File lib/mongrel/debug.rb, line 121
121: def process(request,response)
122: begin
123: stats = Hash.new(0)
124: lengths = {}
125: begin
126: ObjectSpace.each_object do |o|
127: begin
128: if o.respond_to? :length
129: len = o.length
130: lengths[o.class] ||= Mongrel::Stats.new(o.class)
131: lengths[o.class].sample(len)
132: end
133: rescue Object
134: end
135:
136: stats[o.class] += 1
137: end
138: rescue Object # Ignore since ObjectSpace might not be loaded on JRuby
139: end
140:
141: stats.sort {|(k1,v1),(k2,v2)| v2 <=> v1}.each do |k,v|
142: if $last_stat
143: delta = v - $last_stat[k]
144: if v > 10 and delta != 0
145: if lengths[k]
146: $objects_out.printf "%d,%s,%d,%d,%d,%f,%f,%f\n", $run_count, k, $last_stat[k], v, delta,lengths[k].mean,lengths[k].sd,lengths[k].max
147: else
148: $objects_out.printf "%d,%s,%d,%d,%d,,,\n", $run_count, k, $last_stat[k], v, delta
149: end
150: end
151: end
152: end
153:
154: $run_count += 1
155: $last_stat = stats
156: rescue Object
157: STDERR.puts "object.log ERROR: #$!"
158: end
159: end