module Bernard::Keen::Methods
Public Instance Methods
count(event, value)
click to toggle source
# File lib/bernard/keen/methods.rb, line 8 def count(event, value) write(:count, type: event, count: Integer(value)) end
gauge(event, value)
click to toggle source
# File lib/bernard/keen/methods.rb, line 12 def gauge(event, value) write(:gauge, type: event, value: Float(value)) end
splat(events)
click to toggle source
# File lib/bernard/keen/methods.rb, line 16 def splat(events) multiple_write(:splat, events) end
tick(event)
click to toggle source
# File lib/bernard/keen/methods.rb, line 4 def tick(event) write(:tick, type: event, count: 1) end
Private Instance Methods
default_params()
click to toggle source
# File lib/bernard/keen/methods.rb, line 35 def default_params { application_name: application_name } end
multiple_write(event, events)
click to toggle source
# File lib/bernard/keen/methods.rb, line 28 def multiple_write(event, events) uri.path = "/#{api_version}/projects/#{project_id}/events" payload = { event => events }.to_json connection.post(payload) end
write(event, metadata)
click to toggle source
# File lib/bernard/keen/methods.rb, line 20 def write(event, metadata) event = String(event).downcase payload = metadata.merge!(default_params).to_json uri.path = "/#{api_version}/projects/#{project_id}/events/#{event}" connection.post(payload) end