lib/sidekiq/monitor/server/middleware.rb in sidekiq_monitor-0.1.1 vs lib/sidekiq/monitor/server/middleware.rb in sidekiq_monitor-0.1.2
- old
+ new
@@ -5,18 +5,20 @@
def initialize(options=nil)
@processor = Monitor::Processor.new
end
def call(worker, msg, queue)
- @processor.start(worker, msg, queue)
- begin
- return_value = yield
- rescue Exception => exception
- @processor.error(worker, msg, queue, exception)
- raise exception
+ ActiveRecord::Base.connection_pool.with_connection do
+ @processor.start(worker, msg, queue)
+ begin
+ return_value = yield
+ rescue Exception => exception
+ @processor.error(worker, msg, queue, exception)
+ raise exception
+ end
+ @processor.complete(worker, msg, queue, return_value)
+ return_value
end
- @processor.complete(worker, msg, queue, return_value)
- return_value
end
end
end
end
end