Class: SolidQueueWeb::AlertWebhook

Inherits:
Object
  • Object
show all
Defined in:
app/services/solid_queue_web/alert_webhook.rb

Constant Summary collapse

MUTEX =
Mutex.new

Class Method Summary collapse

Class Method Details

.call(failure_count:) ⇒ Object



10
11
12
13
14
15
16
17
# File 'app/services/solid_queue_web/alert_webhook.rb', line 10

def call(failure_count:)
  return unless configured?
  return if failure_count < SolidQueueWeb.alert_failure_threshold
  return unless should_fire?

  urls = webhook_urls
  Thread.new { urls.each { |url| post(url, failure_count) } }
end

.reset!Object



19
20
21
# File 'app/services/solid_queue_web/alert_webhook.rb', line 19

def reset!
  MUTEX.synchronize { @last_fired_at = nil }
end