Sha256: 6dea3ce15aed7544b95f233a6e10d0f358a9912027addd81cc296eeee8cca305
Contents?: true
Size: 967 Bytes
Versions: 2
Compression:
Stored size: 967 Bytes
Contents
# monkey patch the action controller to get reference to middleware caliper tracer module ActionController module Instrumentation def process_action(action, *args) raw_payload = { :controller => self.class.name, :action => self.action_name, :params => request.filtered_parameters, :formats => request.formats.map(&:to_sym), :method => request.method, :path => (request.fullpath rescue "unknown"), # Need payload to reference the request env tracer :caliper_tracer => request.env['caliper.tracer'] } ActiveSupport::Notifications.instrument("start_processing.action_controller", raw_payload.dup) ActiveSupport::Notifications.instrument("process_action.action_controller", raw_payload) do |payload| result = super payload[:status] = response.status append_info_to_payload(payload) result end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
caliper-0.0.2 | lib/caliper/rails/instrumentation.rb |
caliper-0.0.1 | lib/caliper/rails/instrumentation.rb |