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