1
0
Fork 0
mirror of https://github.com/mperham/sidekiq.git synced 2022-11-09 13:52:34 -05:00

use honeybadger for exception.

This commit is contained in:
Teng Siong Ong 2012-10-26 20:33:54 -07:00
parent c64a6eb76b
commit 4da2757801
2 changed files with 21 additions and 0 deletions

View file

@ -6,6 +6,7 @@ module Sidekiq
Sidekiq.logger.warn ex
Sidekiq.logger.warn ex.backtrace.join("\n")
send_to_airbrake(msg, ex) if defined?(::Airbrake)
send_to_honeybadger(msg, ex) if defined?(::Honeybadger)
send_to_exceptional(msg, ex) if defined?(::Exceptional)
send_to_exception_notifier(msg, ex) if defined?(::ExceptionNotifier)
end
@ -16,6 +17,10 @@ module Sidekiq
::Airbrake.notify_or_ignore(ex, :parameters => msg)
end
def send_to_honeybadger(msg, ex)
::Honeybadger.notify_or_ignore(ex, :parameters => msg)
end
def send_to_exceptional(msg, ex)
if ::Exceptional::Config.should_send_to_api?
::Exceptional.context(msg)

View file

@ -55,6 +55,22 @@ class TestExceptionHandler < MiniTest::Unit::TestCase
end
end
describe "with fake Honeybadger" do
before do
::Honeybadger = MiniTest::Mock.new
end
after do
Object.send(:remove_const, "Honeybadger") # HACK should probably inject Honeybadger etc into this class in the future
end
it "notifies Honeybadger" do
::Honeybadger.expect(:notify_or_ignore,nil,[TEST_EXCEPTION,:parameters => { :a => 1 }])
Component.new.invoke_exception(:a => 1)
::Honeybadger.verify
end
end
describe "with fake ExceptionNotifier" do
before do
::ExceptionNotifier = Module.new