Module: InstJobsStatsd::Stats::Timing
- Defined in:
- lib/inst_jobs_statsd/stats/timing.rb,
lib/inst_jobs_statsd/stats/timing/pop.rb,
lib/inst_jobs_statsd/stats/timing/failed.rb,
lib/inst_jobs_statsd/stats/timing/perform.rb
Defined Under Namespace
Modules: Failed, Perform, Pop
Class Method Summary
collapse
Class Method Details
.report_job_timing_failed(job) ⇒ Object
23
24
25
26
27
28
|
# File 'lib/inst_jobs_statsd/stats/timing.rb', line 23
def self.report_job_timing_failed(job)
return unless job
time_to_failure = ((Delayed::Job.db_time_now - job.run_at) * 1000).round
report_timing(:failed_after, job: job, timing: time_to_failure)
end
|
.report_job_timing_queued(job) ⇒ Object
16
17
18
19
20
21
|
# File 'lib/inst_jobs_statsd/stats/timing.rb', line 16
def self.report_job_timing_queued(job)
return unless job
time_in_queue = ((Delayed::Job.db_time_now - job.run_at) * 1000).round
report_timing(:queue, job: job, timing: time_in_queue)
end
|
.report_timing(stat, job: nil, timing: nil, sample_rate: 1, &block) ⇒ Object
6
7
8
9
10
11
12
13
14
|
# File 'lib/inst_jobs_statsd/stats/timing.rb', line 6
def self.report_timing(stat, job: nil, timing: nil, sample_rate: 1, &block)
stats = Naming.qualified_names(stat, job)
if block
InstStatsd::Statsd.time(stats, sample_rate, short_stat: stat, tags: Naming.dd_job_tags(job), &block)
else
InstStatsd::Statsd.timing(stats, timing, sample_rate, short_stat: stat, tags: Naming.dd_job_tags(job))
end
end
|