module Rollbar::Delayed
Attributes
wrapped[RW]
Public Class Methods
build_job_data(job)
click to toggle source
# File lib/rollbar/plugins/delayed_job/plugin.rb, line 77 def self.build_job_data(job) return nil unless ::Rollbar.configuration.report_dj_data JobData.new(job).to_hash end
invoke_job_callback()
click to toggle source
# File lib/rollbar/plugins/delayed_job/plugin.rb, line 48 def self.invoke_job_callback proc do |job, *args, &block| begin block.call(job, *args) rescue StandardError => e report(e, job) raise e end end end
report(e, job)
click to toggle source
# File lib/rollbar/plugins/delayed_job/plugin.rb, line 60 def self.report(e, job) return if skip_report?(job) data = build_job_data(job) ::Rollbar.scope(:request => data) .error(e, :use_exception_level_filters => true) end
skip_report?(job)
click to toggle source
# File lib/rollbar/plugins/delayed_job/plugin.rb, line 69 def self.skip_report?(job) handler = ::Rollbar.configuration.async_skip_report_handler return handler.call(job) if handler.respond_to?(:call) job.attempts < ::Rollbar.configuration.dj_threshold end
wrap_worker()
click to toggle source
# File lib/rollbar/plugins/delayed_job/plugin.rb, line 34 def self.wrap_worker return if wrapped ::Delayed::Worker.plugins << RollbarPlugin self.wrapped = true end
wrap_worker!()
click to toggle source
# File lib/rollbar/plugins/delayed_job/plugin.rb, line 42 def self.wrap_worker! self.wrapped = false wrap_worker end