From 53901655569b9990e5d4865b0518bb18cbe0adb8 Mon Sep 17 00:00:00 2001 From: Rosa Gutierrez Date: Wed, 1 Nov 2023 17:04:26 +0100 Subject: [PATCH] Add SolidQueue.supervisor? to signal that we're running as a SQ supervisor process We only want to do certain things in that case, such as emitting global metrics. --- lib/solid_queue.rb | 5 +++++ lib/solid_queue/supervisor.rb | 1 + 2 files changed, 6 insertions(+) diff --git a/lib/solid_queue.rb b/lib/solid_queue.rb index 03d7f3d3..5e2280f4 100644 --- a/lib/solid_queue.rb +++ b/lib/solid_queue.rb @@ -28,4 +28,9 @@ module SolidQueue mattr_accessor :shutdown_timeout, default: 5.seconds mattr_accessor :supervisor_pidfile + mattr_accessor :supervisor, default: false + + def self.supervisor? + supervisor + end end diff --git a/lib/solid_queue/supervisor.rb b/lib/solid_queue/supervisor.rb index c053e803..0624f113 100644 --- a/lib/solid_queue/supervisor.rb +++ b/lib/solid_queue/supervisor.rb @@ -6,6 +6,7 @@ class Supervisor class << self def start(mode: :work, load_configuration_from: nil) + SolidQueue.supervisor = true configuration = Configuration.new(mode: mode, load_from: load_configuration_from) new(configuration.runners).start