Sha256: 008c31adfcd4b547979cba40eb3f27f12ab918bdad164a1527d3416a3a804fa7

Contents?: true

Size: 1.28 KB

Versions: 36

Compression:

Stored size: 1.28 KB

Contents

module Goalie
  class CustomErrorPages
    alias_method :orig_render_exception, :render_exception

    private

    def render_exception(env, exception)
      exception_data = nil
      begin
        controller = env['action_controller.instance']
        request_data = controller.rollbar_request_data rescue nil
        person_data = controller.rollbar_person_data rescue nil
        exception_data = Rollbar.scope(:request => request_data, :person => person_data).error(exception, :use_exception_level_filters => true)
      rescue => e
        Rollbar.log_warning "[Rollbar] Exception while reporting exception to Rollbar: #{e}"
      end

      # if an exception was reported, save uuid in the env
      # so it can be displayed to the user on the error page
      if exception_data.is_a?(Hash)
        env['rollbar.exception_uuid'] = exception_data[:uuid]
        Rollbar.log_info "[Rollbar] Exception uuid saved in env: #{exception_data[:uuid]}"
      elsif exception_data == 'disabled'
        Rollbar.log_info "[Rollbar] Exception not reported because Rollbar is disabled"
      elsif exception_data == 'ignored'
        Rollbar.log_info "[Rollbar] Exception not reported because it was ignored"
      end

      # now continue as normal
      orig_render_exception(env, exception)
    end
  end
end

Version data entries

36 entries across 36 versions & 1 rubygems

Version Path
rollbar-2.10.0 lib/rollbar/goalie.rb
rollbar-2.9.1 lib/rollbar/goalie.rb
rollbar-2.9.0 lib/rollbar/goalie.rb
rollbar-2.8.3 lib/rollbar/goalie.rb
rollbar-2.8.2 lib/rollbar/goalie.rb
rollbar-2.8.1 lib/rollbar/goalie.rb
rollbar-2.8.0 lib/rollbar/goalie.rb
rollbar-2.7.1 lib/rollbar/goalie.rb
rollbar-2.7.0 lib/rollbar/goalie.rb
rollbar-2.6.3 lib/rollbar/goalie.rb
rollbar-2.6.2 lib/rollbar/goalie.rb
rollbar-2.6.1 lib/rollbar/goalie.rb
rollbar-2.6.0 lib/rollbar/goalie.rb
rollbar-2.5.2 lib/rollbar/goalie.rb
rollbar-2.5.1 lib/rollbar/goalie.rb
rollbar-2.5.0 lib/rollbar/goalie.rb
rollbar-2.4.0 lib/rollbar/goalie.rb
rollbar-2.3.0 lib/rollbar/goalie.rb
rollbar-2.2.1 lib/rollbar/goalie.rb
rollbar-2.2.0 lib/rollbar/goalie.rb