Class: OpenStax::RescueFrom::Logger

Inherits:
Object
  • Object
show all
Defined in:
lib/openstax/rescue_from/logger.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(exception_proxy, logger = Rails.logger) ⇒ Logger

Returns a new instance of Logger.



6
7
8
9
# File 'lib/openstax/rescue_from/logger.rb', line 6

def initialize(exception_proxy, logger = Rails.logger)
  @exception_proxy = exception_proxy
  @logger = logger
end

Instance Attribute Details

#exception_proxyObject (readonly)

Returns the value of attribute exception_proxy.



4
5
6
# File 'lib/openstax/rescue_from/logger.rb', line 4

def exception_proxy
  @exception_proxy
end

#loggerObject (readonly)

Returns the value of attribute logger.



4
5
6
# File 'lib/openstax/rescue_from/logger.rb', line 4

def logger
  @logger
end

Instance Method Details

#record_system_error!(prefix = "An exception occurred") ⇒ Object



11
12
13
14
15
16
17
# File 'lib/openstax/rescue_from/logger.rb', line 11

def record_system_error!(prefix = "An exception occurred")
  logger.error("#{prefix}: #{exception_proxy.name} [#{exception_proxy.error_id}] " +
               "<#{exception_proxy.message}> #{exception_proxy.extras}\n\n" +
               "#{exception_proxy.logger_backtrace}")

  record_system_error_recursively!
end