Method: OneApm::Agent::Instrumentation::ActionControllerSubscriber#finish

Defined in:
lib/one_apm/inst/rails4/action_controller_subscriber.rb

#finish(name, id, payload) ⇒ Object



28
29
30
31
32
33
34
35
36
37
38
39
40
41
# File 'lib/one_apm/inst/rails4/action_controller_subscriber.rb', line 28

def finish(name, id, payload)
  event = pop_event(id)
  event.payload.merge!(payload)

  state = TransactionState.tl_get

  if state.is_execution_traced? && !event.ignored?
    stop_transaction(state, event)
  else
    OneApm::Manager.agent.pop_trace_execution_flag
  end
rescue => e
  log_notification_error(e, name, 'finish')
end