class Rmetrics::Events

Handles action events across rails

Attributes

db_client[R]

Public Class Methods

new() click to toggle source
# File lib/rmetrics/events.rb, line 8
def initialize
  @db_client = Rmetrics::Influx.new(Rmetrics.db_config)
end

Public Instance Methods

cable_subscribe_events() click to toggle source
# File lib/rmetrics/events.rb, line 55
def cable_subscribe_events
  Rmetrics.action_cable.each do |action|
    notification_subscription(action.to_s)
  end
end
controller_subscribe_events() click to toggle source
# File lib/rmetrics/events.rb, line 19
def controller_subscribe_events
  Rmetrics.action_controller.each do |action|
    notification_subscription(action.to_s)
  end
end
job_subscribe_events() click to toggle source
# File lib/rmetrics/events.rb, line 49
def job_subscribe_events
  Rmetrics.active_job.each do |action|
    notification_subscription(action.to_s)
  end
end
mailer_subscribe_events() click to toggle source
# File lib/rmetrics/events.rb, line 37
def mailer_subscribe_events
  Rmetrics.action_mailer.each do |action|
    notification_subscription(action.to_s)
  end
end
notification_subscription(action_name) click to toggle source
# File lib/rmetrics/events.rb, line 12
def notification_subscription(action_name)
  ActiveSupport::Notifications.subscribe(action_name) do |*args|
    event = ActiveSupport::Notifications::Event.new(*args)
    @db_client.write_data(action_name, event)
  end
end
record_subscribe_events() click to toggle source
# File lib/rmetrics/events.rb, line 31
def record_subscribe_events
  Rmetrics.active_record.each do |action|
    notification_subscription(action.to_s)
  end
end
storage_subscribe_events() click to toggle source
# File lib/rmetrics/events.rb, line 61
def storage_subscribe_events
  Rmetrics.active_storage.each do |action|
    notification_subscription(action.to_s)
  end
end
support_subscribe_events() click to toggle source
# File lib/rmetrics/events.rb, line 43
def support_subscribe_events
  Rmetrics.active_support.each do |action|
    notification_subscription(action.to_s)
  end
end
view_subscribe_events() click to toggle source
# File lib/rmetrics/events.rb, line 25
def view_subscribe_events
  Rmetrics.active_view.each do |action|
    notification_subscription(action.to_s)
  end
end