Class: Oopsie::Client

Inherits:
Object
  • Object
show all
Defined in:
lib/oopsie/client.rb

Constant Summary collapse

ERRORS_PATH =
'/api/v1/errors'
CONNECT_TIMEOUT =
5
READ_TIMEOUT =
10

Instance Method Summary collapse

Constructor Details

#initialize(configuration) ⇒ Client

Returns a new instance of Client.



15
16
17
# File 'lib/oopsie/client.rb', line 15

def initialize(configuration)
  @configuration = configuration
end

Instance Method Details

#send_error(error_class:, message:, stack_trace:) ⇒ Object



19
20
21
22
23
24
25
26
# File 'lib/oopsie/client.rb', line 19

def send_error(error_class:, message:, stack_trace:)
  uri = URI.join(@configuration.endpoint, ERRORS_PATH)
  request = build_request(uri, error_class:, message:, stack_trace:)
  response = execute(uri, request)
  handle_response(response)
rescue StandardError => e
  notify_error(e)
end