File tree Expand file tree Collapse file tree 2 files changed +15
-6
lines changed
Expand file tree Collapse file tree 2 files changed +15
-6
lines changed Original file line number Diff line number Diff line change 22require 'sidekiq'
33
44module Raven
5- class Sidekiq
5+ class SidekiqCleanupMiddleware
6+ def call ( _worker , _job , _queue )
7+ yield
8+ ensure
9+ Context . clear!
10+ BreadcrumbBuffer . clear!
11+ end
12+ end
13+
14+ class SidekiqErrorHandler
615 ACTIVEJOB_RESERVED_PREFIX = "_aj_" . freeze
716
817 def call ( ex , context )
@@ -13,9 +22,6 @@ def call(ex, context)
1322 :extra => { :sidekiq => context } ,
1423 :culprit => culprit_from_context ( context )
1524 )
16- ensure
17- Context . clear!
18- BreadcrumbBuffer . clear!
1925 end
2026
2127 private
@@ -59,6 +65,9 @@ def culprit_from_context(context)
5965
6066if Sidekiq ::VERSION > '3'
6167 Sidekiq . configure_server do |config |
62- config . error_handlers << Raven ::Sidekiq . new
68+ config . error_handlers << Raven ::SidekiqErrorHandler . new
69+ config . server_middleware do |chain |
70+ chain . add Raven ::SidekiqCleanupMiddleware
71+ end
6372 end
6473end
Original file line number Diff line number Diff line change 11require 'spec_helper'
22require 'raven/integrations/sidekiq'
33
4- describe Raven ::Sidekiq do
4+ describe Raven ::SidekiqErrorHandler do
55 before ( :all ) do
66 Raven . configure do |config |
77 config . dsn = 'dummy://12345:[email protected] :3000/sentry/42'
You can’t perform that action at this time.
0 commit comments