Skip to Content Skip to Search
Methods
D
E
L
S

Constants

LOG_LEVELS = [:debug, :info, :error].freeze
 

Attributes

[W] logger
[RW] namespace

Class Public methods

default_logger()

# File activesupport/lib/active_support/event_reporter/log_subscriber.rb, line 21
def default_logger
  raise NotImplementedError
end

event_log_level(method_name, level)

# File activesupport/lib/active_support/event_reporter/log_subscriber.rb, line 13
def event_log_level(method_name, level)
  self.log_levels = log_levels.merge(method_name.to_s => level).freeze
end

logger()

# File activesupport/lib/active_support/event_reporter/log_subscriber.rb, line 17
def logger
  @logger || default_logger
end

subscription_filter()

# File activesupport/lib/active_support/event_reporter/log_subscriber.rb, line 28
def subscription_filter
  namespace = self.namespace.to_s
  proc do |event|
    name = event[:name]
    if (dot_idx = name.index("."))
      event_namespace = name[0, dot_idx]
      namespace == event_namespace
    end
  end
end

Instance Public methods

emit(event)

# File activesupport/lib/active_support/event_reporter/log_subscriber.rb, line 42
def emit(event)
  return unless logger
  name = event[:name]
  event_method = name[name.index(".") + 1, name.length]

  public_send(event_method, event) if log_level_satisfied?(event_method)
end

logger()

# File activesupport/lib/active_support/event_reporter/log_subscriber.rb, line 50
def logger
  self.class.logger
end