Sha256: 01a16386cc1a9a2d913022f4edf773526551671d62388dac7b135930104043af

Contents?: true

Size: 954 Bytes

Versions: 26

Compression:

Stored size: 954 Bytes

Contents

Errplane.configure(true) do |config|
  config.logger               ||= (defined?(logger) ? logger : ENV['rack.logger'])
  config.framework              = "Sinatra"
  config.framework_version      = ::Sinatra::VERSION

  if defined?(settings)
    config.environment        ||= settings.environment
    config.application_root   ||= settings.root
  end
end

def handle_exception(e)
  request_data = {
    :request_url => request.env["REQUEST_URI"],
    :user_agent => request.env["HTTP_USER_AGENT"],
    :params => request.env["rack.request.query_hash"],
    :action => request.env["REQUEST_PATH"],
    :session => (defined?(session) ? session : request.env["rack.session"]) || {}
  }

  Errplane.transmit_unless_ignorable(e, request_data)
  raise e
end

if defined?(error)
  error { handle_exception(request.env['sinatra.error']) }
elsif defined?(Sinatra::Base)
  class Sinatra::Base
    error { handle_exception(request.env['sinatra.error']) }
  end
end

Version data entries

26 entries across 26 versions & 1 rubygems

Version Path
errplane-1.0.15 lib/errplane/sinatra.rb
errplane-1.0.14 lib/errplane/sinatra.rb
errplane-1.0.13 lib/errplane/sinatra.rb
errplane-1.0.11 lib/errplane/sinatra.rb
errplane-1.0.10 lib/errplane/sinatra.rb
errplane-1.0.9 lib/errplane/sinatra.rb
errplane-1.0.8 lib/errplane/sinatra.rb
errplane-1.0.7 lib/errplane/sinatra.rb
errplane-1.0.6 lib/errplane/sinatra.rb
errplane-1.0.5 lib/errplane/sinatra.rb
errplane-1.0.4 lib/errplane/sinatra.rb
errplane-1.0.3 lib/errplane/sinatra.rb
errplane-1.0.2 lib/errplane/sinatra.rb
errplane-1.0.1 lib/errplane/sinatra.rb
errplane-1.0.0 lib/errplane/sinatra.rb
errplane-0.6.10 lib/errplane/sinatra.rb
errplane-0.6.9 lib/errplane/sinatra.rb
errplane-0.6.8 lib/errplane/sinatra.rb
errplane-0.6.7 lib/errplane/sinatra.rb
errplane-0.6.6 lib/errplane/sinatra.rb