Class: ServicePing::SubmitService
- Inherits:
-
Object
- Object
- ServicePing::SubmitService
- Defined in:
- app/services/service_ping/submit_service.rb
Constant Summary collapse
- PRODUCTION_BASE_URL =
'https://version.gitlab.com'
- STAGING_BASE_URL =
'https://gitlab-org-gitlab-services-version-gitlab-com-staging.version-staging.gitlab.org'
- USAGE_DATA_PATH =
'usage_data'
- ERROR_PATH =
'usage_ping_errors'
- METADATA_PATH =
'usage_ping_metadata'
- SubmissionError =
Class.new(StandardError)
Instance Method Summary collapse
- #execute ⇒ Object
-
#initialize(skip_db_write: false, payload: nil) ⇒ SubmitService
constructor
A new instance of SubmitService.
Constructor Details
#initialize(skip_db_write: false, payload: nil) ⇒ SubmitService
Returns a new instance of SubmitService.
13 14 15 16 |
# File 'app/services/service_ping/submit_service.rb', line 13 def initialize(skip_db_write: false, payload: nil) @skip_db_write = skip_db_write @payload = payload end |
Instance Method Details
#execute ⇒ Object
18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 |
# File 'app/services/service_ping/submit_service.rb', line 18 def execute return unless ServicePing::ServicePingSettings.product_intelligence_enabled? start_time = Time.current begin response = submit_usage_data_payload raise SubmissionError, "Unsuccessful response code: #{response.code}" unless response.success? handle_response(response) rescue StandardError => e submit_error_payload(e, start_time) raise end end |