16
17
18
19
20
21
22
23
24
25
26
27
28
29
|
# File 'lib/shoryuken/processor.rb', line 16
def process
return logger.error { "No worker found for #{queue}" } unless worker
Shoryuken::Logging.with_context("#{worker_name(worker.class, sqs_msg, body)}/#{queue}/#{sqs_msg.message_id}") do
worker.class.server_middleware.invoke(worker, queue, sqs_msg, body) do
worker.perform(sqs_msg, body)
end
end
rescue Exception => ex
logger.error { "Processor failed: #{ex.message}" }
logger.error { ex.backtrace.join("\n") } unless ex.backtrace.nil?
raise
end
|