class InfluxDB::Metrics::Event

Public Instance Methods

handle(name, id, start, finish, payload) click to toggle source
# File lib/influxdb/metrics/event.rb, line 16
def handle(name, id, start, finish, payload)
  fail NotImplementedError, 'Must implment #handle'
end
subscribe() click to toggle source
# File lib/influxdb/metrics/event.rb, line 6
def subscribe
  ActiveSupport::Notifications.subscribe(subscribe_to) do |*args|
    handle(*args)
  end
end
subscribe_to() click to toggle source
# File lib/influxdb/metrics/event.rb, line 12
def subscribe_to
  fail NotImplementedError, 'Must implement #subscribe_to'
end

Private Instance Methods

duration(start, finish) click to toggle source
# File lib/influxdb/metrics/event.rb, line 35
def duration(start, finish)
  ((finish - start) * 1000).ceil
end
log(level, message) click to toggle source
# File lib/influxdb/metrics/event.rb, line 31
def log(level, message)
  logger.send(level, '[InfluxDB::Metrics] ' + message) if logger
end
write_point(name, data = {}) click to toggle source
# File lib/influxdb/metrics/event.rb, line 25
def write_point(name, data = {})
  client.write_point("#{config.app_name}.#{name}", data)
rescue => e
  log :debug, "Unable to write point: #{e.message}"
end