class Mnemosyne::Probe

Public Class Methods

subscribe(name) click to toggle source
# File lib/mnemosyne/probe.rb, line 31
def subscribe(name)
  subscriptions << name
end
subscriptions() click to toggle source
# File lib/mnemosyne/probe.rb, line 27
def subscriptions
  @subscriptions ||= Set.new
end

Public Instance Methods

install() click to toggle source
# File lib/mnemosyne/probe.rb, line 7
def install
  setup

  self.class.subscriptions.each do |subscribe|
    ::ActiveSupport::Notifications.subscribe(subscribe) do |*args|
      trace = ::Mnemosyne::Instrumenter.current_trace
      next unless trace

      call(trace, *args)
    end
  end

  logger.debug(Mnemosyne) { "Installed probe #{self.class.name}" }
end
setup() click to toggle source
# File lib/mnemosyne/probe.rb, line 22
def setup
  # noop
end