Class: Railbox::Workers::ProcessQueueWorker

Inherits:
BaseWorker
  • Object
show all
Defined in:
lib/railbox/workers/process_queue_worker.rb

Constant Summary collapse

PROCESSORS =
{
  'handler'      => Processors::HandlerProcessor,
  'http_request' => Processors::HttpProcessor
}.freeze

Instance Method Summary collapse

Methods inherited from BaseWorker

#with_lock

Instance Method Details

#performObject



9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
# File 'lib/railbox/workers/process_queue_worker.rb', line 9

def perform
  with_lock do
    grouped_records.each_value do |group|
      group.each do |record|
        process_record(record)
      rescue => e
        on_failure(e, record)
        next
      end
    rescue => e
      Rails.logger.error("RailboxWorker error: #{e.message}\n #{e.backtrace&.take(3)&.join("\n")}")
      next
    end
  rescue => e
    Rails.logger.error("RailboxWorker error: #{e.message}\n #{e.backtrace&.take(3)&.join("\n")}")
  end
end