Class: SplitIoClient::Api::Splits
- Defined in:
- lib/engine/api/splits.rb
Instance Method Summary collapse
-
#initialize(api_key, config, metrics) ⇒ Splits
constructor
A new instance of Splits.
- #since(since) ⇒ Object
Methods inherited from Client
Constructor Details
#initialize(api_key, config, metrics) ⇒ Splits
Returns a new instance of Splits.
4 5 6 7 8 |
# File 'lib/engine/api/splits.rb', line 4 def initialize(api_key, config, metrics) @api_key = api_key @config = config @metrics = metrics end |
Instance Method Details
#since(since) ⇒ Object
10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 |
# File 'lib/engine/api/splits.rb', line 10 def since(since) start = Time.now prefix = 'splitChangeFetcher' splits = call_api('/splitChanges', @config, @api_key, {:since => since}) if splits.status / 100 == 2 result = splits_with_segment_names(splits.body) @metrics.count(prefix + '.status.' + splits.status.to_s, 1) @config.logger.debug("#{result[:splits].length} splits retrieved. since=#{since}") if @config.debug_enabled and result[:splits].length > 0 @config.logger.debug("#{result}") if @config.transport_debug_enabled else @metrics.count(prefix + '.status.' + splits.status.to_s, 1) @config.logger.error('Unexpected result from API call') end latency = (Time.now - start) * 1000.0 @metrics.time(prefix + '.time', latency) result end |