Class: Flagstack::Telemetry::Submitter
- Inherits:
-
Object
- Object
- Flagstack::Telemetry::Submitter
- Defined in:
- lib/flagstack/telemetry/submitter.rb
Constant Summary collapse
- MAX_RETRIES =
3
Instance Method Summary collapse
- #call(metrics) ⇒ Object
-
#initialize(client, config) ⇒ Submitter
constructor
A new instance of Submitter.
Constructor Details
#initialize(client, config) ⇒ Submitter
Returns a new instance of Submitter.
10 11 12 13 14 |
# File 'lib/flagstack/telemetry/submitter.rb', line 10 def initialize(client, config) @client = client @config = config @request_id = SecureRandom.uuid end |
Instance Method Details
#call(metrics) ⇒ Object
16 17 18 19 20 21 22 23 24 25 26 |
# File 'lib/flagstack/telemetry/submitter.rb', line 16 def call(metrics) return if metrics.empty? body = build_body(metrics) compressed = gzip(body) response = submit_with_retry(compressed) handle_response(response) if response rescue => e @config.log("Telemetry submission failed: #{e.}", level: :error) end |