Sha256: ea02110f816ff68d1b83bdaf24445dfa761c3d3b5ab5f80a21bd0c5ce232e7aa

Contents?: true

Size: 788 Bytes

Versions: 9

Compression:

Stored size: 788 Bytes

Contents

# frozen_string_literal: true

require 'securerandom'

module Diffend
  # Errors handlers namespace
  module HandleErrors
    # Module responsible for building exception payload
    module BuildExceptionPayload
      class << self
        # Build exception payload
        #
        # @param exception [Exception, NilClass] expection that was raised
        # @param payload [Hash] with versions to check
        #
        # @return [Hash]
        def call(exception, payload)
          {
            request_id: SecureRandom.uuid,
            payload: payload,
            exception: {
              class: exception&.class,
              message: exception&.message,
              backtrace: exception&.backtrace
            }
          }.freeze
        end
      end
    end
  end
end

Version data entries

9 entries across 9 versions & 2 rubygems

Version Path
diffend-0.2.54 lib/diffend/handle_errors/build_exception_payload.rb
diffend-monitor-0.2.54 lib/diffend/handle_errors/build_exception_payload.rb
diffend-0.2.53 lib/diffend/handle_errors/build_exception_payload.rb
diffend-monitor-0.2.51 lib/diffend/handle_errors/build_exception_payload.rb
diffend-0.2.51 lib/diffend/handle_errors/build_exception_payload.rb
diffend-monitor-0.2.50 lib/diffend/handle_errors/build_exception_payload.rb
diffend-0.2.50 lib/diffend/handle_errors/build_exception_payload.rb
diffend-monitor-0.2.49 lib/diffend/handle_errors/build_exception_payload.rb
diffend-0.2.49 lib/diffend/handle_errors/build_exception_payload.rb