class Loga::Sidekiq6::JobLogger
Constants
- EVENT_TYPE
Public Instance Methods
call(item, _queue) { || ... }
click to toggle source
# File lib/loga/sidekiq6/job_logger.rb, line 8 def call(item, _queue) start = ::Process.clock_gettime(::Process::CLOCK_MONOTONIC) yield with_elapsed_time_context(start) do loga_log( message: "#{item['class']} with jid: '#{item['jid']}' done", item: item, ) end rescue Exception => e # rubocop:disable Lint/RescueException with_elapsed_time_context(start) do loga_log( message: "#{item['class']} with jid: '#{item['jid']}' fail", item: item, exception: e ) end raise end
Private Instance Methods
loga_log(message:, item:, exception: nil)
click to toggle source
# File lib/loga/sidekiq6/job_logger.rb, line 31 def loga_log(message:, item:, exception: nil) data = { 'created_at' => item['created_at'], 'enqueued_at' => item['enqueued_at'], 'jid' => item['jid'], 'queue' => item['queue'], 'retry' => item['retry'], 'params' => item['args'], 'class' => item['class'], } if exception data['exception'] = exception @logger.warn(Event.new(type: EVENT_TYPE, message: message, data: data)) else @logger.info(Event.new(type: EVENT_TYPE, message: message, data: data)) end end