Module: Diffend::HandleErrors::Report
- Defined in:
- lib/diffend/handle_errors/report.rb
Overview
Module responsible for reporting errors to diffend
Class Method Summary collapse
- .build_request_object(config, payload) ⇒ Diffend::RequestObject
-
.call(config:, message:, exception: nil, payload: {}, report: false, raise_exception: true) ⇒ Net::HTTPResponse
Execute request to Diffend.
-
.prepare_exception_payload(exception, payload) ⇒ Hash
Prepare exception payload and display it to stdout.
Class Method Details
.build_request_object(config, payload) ⇒ Diffend::RequestObject
40 41 42 43 44 45 46 47 |
# File 'lib/diffend/handle_errors/report.rb', line 40 def build_request_object(config, payload) Diffend::RequestObject.new( config, config.errors_url, payload, :post ) end |
.call(config:, message:, exception: nil, payload: {}, report: false, raise_exception: true) ⇒ Net::HTTPResponse
Execute request to Diffend
18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 |
# File 'lib/diffend/handle_errors/report.rb', line 18 def call(config:, message:, exception: nil, payload: {}, report: false, raise_exception: true) exception_payload = prepare_exception_payload(exception, payload) Diffend::HandleErrors::Messages::PAYLOAD_DUMP .tap(&config.logger.method(:error)) Diffend::HandleErrors::Messages .const_get(.to_s.upcase) .tap(&config.logger.method(:error)) if report Diffend::Request.call( build_request_object(config, exception_payload) ) end raise Diffend::Errors::HandledException if raise_exception end |
.prepare_exception_payload(exception, payload) ⇒ Hash
Prepare exception payload and display it to stdout
55 56 57 58 59 |
# File 'lib/diffend/handle_errors/report.rb', line 55 def prepare_exception_payload(exception, payload) Diffend::HandleErrors::BuildExceptionPayload .call(exception, payload) .tap(&Diffend::HandleErrors::DisplayToStdout.method(:call)) end |