Class: Bigcommerce::Prometheus::Servers::Thin::Controllers::SendMetricsController

Inherits:
BaseController
  • Object
show all
Defined in:
lib/bigcommerce/prometheus/servers/thin/controllers/send_metrics_controller.rb

Overview

POST /send-metrics

Defined Under Namespace

Classes: BadMetricsError, InvalidRequestError

Instance Method Summary collapse

Methods inherited from BaseController

#handle, #initialize, #set_header

Constructor Details

This class inherits a constructor from Bigcommerce::Prometheus::Servers::Thin::Controllers::BaseController

Instance Method Details

#callObject

Handle incoming metrics



33
34
35
36
37
38
39
40
41
42
43
# File 'lib/bigcommerce/prometheus/servers/thin/controllers/send_metrics_controller.rb', line 33

def call
  raise InvalidRequestError unless @request.post?

  @server_metrics.add_session
  process_metrics
  succeed!
rescue InvalidRequestError => _e
  fail!('Invalid request type. Only POST is supported.')
rescue BadMetricsError => e
  fail!(e.message)
end