public
Description: middleware for posting exceptions to http://hoptoadapp.com
Homepage: http://github.com/atmos/rack_hoptoad
Clone URL: git://github.com/atmos/rack_hoptoad.git
name age message
file .gitignore Sun May 10 17:14:06 -0700 2009 initial import of the hoptoad notifier code. i... [atmos]
file LICENSE Sun May 10 17:14:06 -0700 2009 initial import of the hoptoad notifier code. i... [atmos]
file README.md Thu May 14 17:40:28 -0700 2009 document how to get this working in a sinatra app [atmos]
file Rakefile Wed May 13 20:13:37 -0700 2009 next version is 0.0.4 [atmos]
file TODO Sun May 10 17:14:06 -0700 2009 initial import of the hoptoad notifier code. i... [atmos]
directory lib/ Thu May 14 16:43:29 -0700 2009 add support and specs for using the environment... [atmos]
directory spec/ Thu May 14 16:43:29 -0700 2009 add support and specs for using the environment... [atmos]
README.md

rack_hoptoad

A gem that provides exception notifications to hoptoad as rack middleware.

Usage

Throw something like this in your config.ru to enable notifications.

require 'rack_hoptoad'

use Rack::HoptoadNotifier, 'fd48c7d26f724503a0280f808f44b339fc65fab8'

You can also exclude certain sensitive environmental variables using the block syntax

require 'rack_hoptoad'

use Rack::HoptoadNotifier, 'fd48c7d26f724503a0280f808f44b339fc65fab8' do |notifier|
  notifier.environment_filters << %w(MY_SECRET_KEY MY_SECRET_TOKEN)
end

If your RACK_ENV variable is set to production or staging it'll actually post to hoptoad. It won't process in the other environments.

Installation

% sudo gem install rack_hoptoad

Sinatra Notes

In order for exceptions to propagate up to Rack in Sinatra you need to enable raise_errors

class MyApp < Sinatra::Default
  enable :raise_errors
end

Note that the errors block does not execute so you'll need to handle the 500 elsewhere.