class NetuitiveRailsAgent::SidekiqTracker::ErrorTracker
Public Class Methods
new()
click to toggle source
# File lib/netuitive_rails_agent/sidekiq.rb, line 39 def initialize @interaction = NetuitiveRailsAgent::ApiInteraction.new end
Public Instance Methods
call(exception, ctx_hash)
click to toggle source
# File lib/netuitive_rails_agent/sidekiq.rb, line 43 def call(exception, ctx_hash) NetuitiveRailsAgent::ErrorLogger.guard('error during sidekiq ErrorTracker') do NetuitiveRailsAgent::NetuitiveLogger.log.debug "sidekiq error tracked. context: #{ctx_hash[:context]}" tags = { sidekiq: 'true', context: ctx_hash[:context] } metrics = ['sidekiq.errors'] job = ctx_hash[:job] unless job.nil? if defined? job.item item = job.item klass = item['wrapped'.freeze] || worker.class.to_s queue = item['queue'] metrics << "sidekiq.#{queue}.#{klass}.error.count" metrics << "sidekiq.#{queue}.error.count" end end handle_error(exception, metrics, tags) end end