Module: ActiveRecordDeadlockHandler::Logging

Defined in:
lib/active_record_deadlock_handler/logging.rb

Class Method Summary collapse

Class Method Details

.log(message, exception:, attempt:, config:) ⇒ Object



5
6
7
8
9
10
11
12
13
14
# File 'lib/active_record_deadlock_handler/logging.rb', line 5

def self.log(message, exception:, attempt:, config:)
  logger = resolve_logger(config)
  return unless logger

  error_summary = exception.message.lines.first&.strip
  full_message  = "[ActiveRecordDeadlockHandler] #{message} " \
                  "(attempt=#{attempt}, error=#{exception.class}: #{error_summary})"

  logger.public_send(config.log_level, full_message)
end