Module: InstJobsStatsd::Stats::Timing::Perform

Defined in:
lib/inst_jobs_statsd/stats/timing/perform.rb

Class Method Summary collapse

Class Method Details

.enableObject



7
8
9
10
# File 'lib/inst_jobs_statsd/stats/timing/perform.rb', line 7

def self.enable
  enable_batching
  enable_perform_timing
end

.enable_batchingObject



12
13
14
15
16
17
18
# File 'lib/inst_jobs_statsd/stats/timing/perform.rb', line 12

def self.enable_batching
  Delayed::Worker.lifecycle.around(:perform) do |worker, job, &block|
    InstStatsd::Statsd.batch do
      block.call(worker, job)
    end
  end
end

.enable_perform_timingObject



20
21
22
23
24
25
26
27
# File 'lib/inst_jobs_statsd/stats/timing/perform.rb', line 20

def self.enable_perform_timing
  Delayed::Worker.lifecycle.around(:perform) do |worker, job, &block|
    Timing.report_job_timing_queued(job)
    Timing.report_timing(:perform, job: job) do
      block.call(worker, job)
    end
  end
end