Class: SplitIoClient::Api::Events
- Defined in:
- lib/splitclient-rb/engine/api/events.rb
Constant Summary
Constants inherited from Client
Instance Method Summary collapse
-
#initialize(api_key, events) ⇒ Events
constructor
A new instance of Events.
- #post ⇒ Object
Methods inherited from Client
Constructor Details
#initialize(api_key, events) ⇒ Events
Returns a new instance of Events.
4 5 6 7 |
# File 'lib/splitclient-rb/engine/api/events.rb', line 4 def initialize(api_key, events) @api_key = api_key @events = events end |
Instance Method Details
#post ⇒ Object
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 |
# File 'lib/splitclient-rb/engine/api/events.rb', line 9 def post if @events.empty? SplitIoClient.configuration.logger.debug('No events to report') if SplitIoClient.configuration.debug_enabled return end @events.each_slice(SplitIoClient.configuration.events_queue_size) do |event_slice| result = post_api( "#{SplitIoClient.configuration.events_uri}/events/bulk", @api_key, event_slice.map { |event| formatted_event(event[:e]) }, 'SplitSDKMachineIP' => event_slice[0][:m][:i], 'SplitSDKMachineName' => event_slice[0][:m][:n], 'SplitSDKVersion' => event_slice[0][:m][:s] ) if (200..299).include? result.status SplitIoClient.configuration.logger.debug("Events reported: #{event_slice.size}") if SplitIoClient.configuration.debug_enabled else SplitIoClient.configuration.logger.error("Unexpected status code while posting events: #{result.status}") end end end |