Sha256: a0b147601ab2f412fbf24cdaa2774a6d1bb7d13e2ce6529a1549c2ef82e17fc4
Contents?: true
Size: 1.06 KB
Versions: 3
Compression:
Stored size: 1.06 KB
Contents
module XRayMachine class Summary def self.add(payload) payload_sum = XRayMachine::LogSubscriber.runtimes.map{|k,v| v}.inject(0){|a,b| a+b} # most of the times things are lazyloaded if payload[:view_runtime] && payload[:view_runtime] > payload_sum payload[:view_runtime] -= payload_sum end end def self.messages XRayMachine::LogSubscriber.runtimes.map do |stream_name, duration| stream = XRayMachine::Config.for(stream_name) if stream.show_in_summary? "%s: %.1fms" % [stream.title, duration] end end.compact end module Runtime extend ActiveSupport::Concern protected def append_info_to_payload(payload) super.tap do XRayMachine::Summary.add(payload) end end module ClassMethods def log_process_action(payload) super.tap do |messages| XRayMachine::Summary.messages.each do |xray_message| messages << xray_message end end end end end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
x-ray-machine-1.0.4 | lib/x_ray_machine/summary.rb |
x-ray-machine-1.0.3 | lib/x_ray_machine/summary.rb |
x-ray-machine-1.0.2 | lib/x_ray_machine/summary.rb |