class Croaker::Swallower
Attributes
error[R]
logger[R]
note[R]
Public Class Methods
new(error:, note:, logger: Rails.logger)
click to toggle source
# File lib/croaker.rb, line 10 def initialize(error:, note:, logger: Rails.logger) @error = error @logger = logger @note = note end
Public Instance Methods
call()
click to toggle source
# File lib/croaker.rb, line 18 def call log(error: error, note: note) capture(error) end
capture(error)
click to toggle source
# File lib/croaker.rb, line 33 def capture(error) if capturer capturer.capture_error(error) else logger.tagged("Croaker") do logger.info "Not capturing this error - no error capturing service registered." end end end
log(error:, note:)
click to toggle source
# File lib/croaker.rb, line 23 def log(error:, note:) message = "Unhandled error: [#{note}] [#{error.message}]" message += " #{error.backtrace.first}" if error.backtrace logger.tagged("Croaker") do logger.error message end end
Private Instance Methods
capturer()
click to toggle source
# File lib/croaker.rb, line 45 def capturer defined?(::Raven) ? ::Raven : nil end