Class: SolidQueueWeb::SlowJobAlert
- Inherits:
-
Object
- Object
- SolidQueueWeb::SlowJobAlert
- Defined in:
- app/services/solid_queue_web/slow_job_alert.rb
Constant Summary collapse
- MUTEX =
Mutex.new
Class Method Summary collapse
Class Method Details
.call ⇒ Object
10 11 12 13 14 15 16 17 18 19 20 21 22 |
# File 'app/services/solid_queue_web/slow_job_alert.rb', line 10 def call return unless configured? slow_count = SolidQueue::ClaimedExecution .where("created_at <= ?", SolidQueueWeb.slow_job_threshold.ago) .count return if slow_count < SolidQueueWeb.alert_slow_job_count_threshold return unless should_fire? urls = webhook_urls Thread.new { urls.each { |url| post(url, slow_count) } } end |
.reset! ⇒ Object
24 25 26 |
# File 'app/services/solid_queue_web/slow_job_alert.rb', line 24 def reset! MUTEX.synchronize { @last_fired_at = nil } end |