module Isolator::ActiveSupportSubscriber
ActiveSupport notifications listener Used for ActiveRecord and ROM::SQL (when instrumentation is available)
Constants
- FINISH_PATTERN
- START_PATTERN
Public Class Methods
subscribe!(event)
click to toggle source
# File lib/isolator/orm_adapters/active_support_subscriber.rb, line 10 def self.subscribe!(event) ::ActiveSupport::Notifications.subscribe(event) do |_name, _start, _finish, _id, query| connection_id = query[:connection_id] || query[:connection]&.object_id || 0 Isolator.incr_transactions!(connection_id) if START_PATTERN.match?(query[:sql]) Isolator.decr_transactions!(connection_id) if FINISH_PATTERN.match?(query[:sql]) end end