class Ezlog::Rails::LogSubscriber

Public Class Methods

attach(subscriber_class, namespace) click to toggle source
# File lib/ezlog/rails/log_subscriber.rb, line 16
def attach(subscriber_class, namespace)
  subscriber_class.attach_to namespace
end
detach(subscriber_class) click to toggle source
# File lib/ezlog/rails/log_subscriber.rb, line 5
def detach(subscriber_class)
  subscriber = ::ActiveSupport::LogSubscriber.log_subscribers.find { |subscriber| subscriber.is_a? subscriber_class }
  return unless subscriber

  subscriber.patterns.each do |pattern|
    ::ActiveSupport::Notifications.notifier.listeners_for(pattern).each do |listener|
      ::ActiveSupport::Notifications.unsubscribe listener if listener.instance_variable_get('@delegate').is_a? subscriber_class
    end
  end
end