class ElasticAPM::Spies::ActionDispatchSpy

@api private

Public Instance Methods

install() click to toggle source
# File lib/elastic_apm/spies/action_dispatch.rb, line 8
def install
  ::ActionDispatch::ShowExceptions.class_eval do
    alias render_exception_without_apm render_exception

    def render_exception(env, exception)
      context = ElasticAPM.build_context(rack_env: env, for_type: :error)
      ElasticAPM.report(exception, context: context, handled: false)

      render_exception_without_apm env, exception
    end
  end
end
render_exception(env, exception) click to toggle source
# File lib/elastic_apm/spies/action_dispatch.rb, line 12
def render_exception(env, exception)
  context = ElasticAPM.build_context(rack_env: env, for_type: :error)
  ElasticAPM.report(exception, context: context, handled: false)

  render_exception_without_apm env, exception
end