lib/litejob/processor.rb in litejob-0.2.2 vs lib/litejob/processor.rb in litejob-0.2.3
- old
+ new
@@ -10,11 +10,11 @@
@queue = queue
@id = id
@serialized_job = serialized_job
@job_hash = JSON.parse(@serialized_job)
@litequeue = Litequeue.instance
-
+
set_log_context!(queue: @queue, class: @job_hash["class"], job: @id)
end
def repush(id, job, delay = 0, queue = nil)
@litequeue.repush(id, JSON.dump(job), queue: queue, delay: delay)
@@ -26,11 +26,11 @@
instance = klass.new
begin
instance.perform(*@job_hash["params"])
log(:end)
- rescue StandardError => e
+ rescue => e
if @job_hash["retries_left"] == 0
err(e, "retries exhausted, moving to _dead queue")
repush(@id, @job_hash, 0, "_dead")
else
@job_hash["retries_left"] ||= @job_hash["attempts"]
@@ -38,35 +38,35 @@
retry_delay = (@job_hash["attempts"] - @job_hash["retries_left"]) * 0.1
err(e, "retrying in #{retry_delay} seconds")
repush(@id, @job_hash, retry_delay, @job_hash["queue"])
end
end
- rescue StandardError => e
+ rescue => e
# this is an error in the extraction of job info, retrying here will not be useful
err(e, "while processing job=#{@serialized_job}")
raise e
end
-
+
private
-
+
def set_log_context!(**attributes)
- @log_context = attributes.map { |k, v| [k, v].join('=') }.join(' ')
+ @log_context = attributes.map { |k, v| [k, v].join("=") }.join(" ")
end
-
+
def log(event, msg: nil)
prefix = "[litejob]:[#{event.to_s.upcase}]"
-
+
Litejob.logger.info [prefix, @log_context, msg].compact.join(" ")
end
-
+
def err(exception, msg = nil)
prefix = "[litejob]:[ERR]"
- error_context = if exception.class.name == exception.message
+ error_context = if exception.message == exception.class.name
"failed with #<#{exception.class.name}>"
else
"failed with #{exception.inspect}"
end
-
+
Litejob.logger.error [prefix, @log_context, error_context, msg].compact.join(" ")
end
end
end