class ActionController::StatsSubscriber
Public Instance Methods
action_controller_process_action_count()
click to toggle source
# File lib/gremlin/railtie.rb, line 45 def action_controller_process_action_count @process_action_count ||= Gremlin.registry.register Gremlin::Instruments::Counter.new("action_controller_process_action_count", "Count of process_action.action_controller notifications handled by Gremlin.", basic_labels) end
action_controller_process_action_db_runtime_ms()
click to toggle source
# File lib/gremlin/railtie.rb, line 57 def action_controller_process_action_db_runtime_ms @process_action_db_runtime ||= Gremlin.registry.register Gremlin::Instruments::Summary.new("action_controller_process_action_db_runtime_ms", "ActionController process action db runtime in milliseconds.", basic_labels) end
action_controller_process_action_total_runtime_ms()
click to toggle source
# File lib/gremlin/railtie.rb, line 63 def action_controller_process_action_total_runtime_ms @process_action_total_runtime ||= Gremlin.registry.register Gremlin::Instruments::Summary.new("action_controller_process_action_total_runtime_ms", "ActionController process action total runtime in milliseconds.", basic_labels) end
action_controller_process_action_view_runtime_ms()
click to toggle source
# File lib/gremlin/railtie.rb, line 51 def action_controller_process_action_view_runtime_ms @process_action_view_runtime ||= Gremlin.registry.register Gremlin::Instruments::Summary.new("action_controller_process_action_view_runtime_ms", "ActionController process action view runtime in milliseconds.", basic_labels) end
action_controller_start_processing_count()
click to toggle source
# File lib/gremlin/railtie.rb, line 39 def action_controller_start_processing_count @start_processing_count ||= Gremlin.registry.register Gremlin::Instruments::Counter.new("action_controller_start_processing_count", "Count of start_processing.action_controller notifications handled by Gremlin.", basic_labels) end
basic_labels()
click to toggle source
# File lib/gremlin/railtie.rb, line 25 def basic_labels environment = ::Rails.env.to_s application_name = ::Rails.application.class.parent_name.downcase node = `hostname`.strip { node: node, app: application_name, env: environment } end
notification_count()
click to toggle source
# File lib/gremlin/railtie.rb, line 33 def notification_count @notification_count ||= Gremlin.registry.register Gremlin::Instruments::Counter.new("notification_count", "Count of notifications handled by Gremlin.", basic_labels) end
process_action(event)
click to toggle source
# File lib/gremlin/railtie.rb, line 69 def process_action(event) return if Gremlin.disabled? notification_count.increment action_controller_process_action_count.increment({ controller: event.payload[:controller].to_s, format: event.payload[:format].to_s, action: event.payload[:action], status: event.payload[:status] }) begin action_controller_process_action_view_runtime_ms.observe({ controller: event.payload[:controller], method: event.payload[:method], status: event.payload[:status], action: event.payload[:action] }, event.payload[:view_runtime] ) rescue; end begin action_controller_process_action_db_runtime_ms.observe({ controller: event.payload[:controller], method: event.payload[:method], status: event.payload[:status], action: event.payload[:action] }, event.payload[:db_runtime] ) rescue; end begin action_controller_process_action_total_runtime_ms.observe({ controller: event.payload[:controller], method: event.payload[:method], status: event.payload[:status], action: event.payload[:action] }, event.duration ) rescue; end end
start_processing(event)
click to toggle source
# File lib/gremlin/railtie.rb, line 106 def start_processing(event) return if Gremlin.disabled? notification_count.increment action_controller_start_processing_count.increment({ controller: event.payload[:controller].to_s, format: event.payload[:format].to_s, action: event.payload[:action] }) end