Exemple #1
0
  def _get_value_count(self, value_count, board_ids=None, sensor_type=None, start_offset=None, end_offset=None):
    db_params = {
      'db': self.db,
      'board_ids': board_ids,
      'sensor_type': sensor_type,
      'start': utils.time_offset(start_offset),
      'end': utils.time_offset(end_offset)
    }

    if value_count['type'] == 'Metric':
      db_params['last_available'] = value_count['count']
      metrics = database.get_metric(**db_params)
    elif value_count['type'] == 'LastMetric':
      metrics = database.get_last_metric(**db_params)
    else:
      metrics = []

    return metrics
Exemple #2
0
  def _check_feed_interval(self, feed_name, result, interval):
    try:
      last_feeds = database.get_feed(self.db, feed_name=feed_name,
              result=result,
              last_available=1)
    except OperationalError as e:
      last_feeds = None
      LOG.error("Fail to get feeds '%s'", e)

    if not last_feeds:
      last_feed = 0
    else:
      last_feed = last_feeds[0].last_update

    return utils.time_offset(-last_feed) > interval
Exemple #3
0
  def _check_action_interval(self, sensor_data, sensor_action_id, action_interval):
    try:
      last_actions = database.get_action(self.db, board_ids=sensor_data['board_id'],
              sensor_type=sensor_data['sensor_type'],
              sensor_action_id=sensor_action_id,
              last_available=1)
    except OperationalError as e:
      last_actions = None
      LOG.error("Fail to get action '%s'", e)

    if not last_actions:
      last_action = 0
    else:
      last_action = last_actions[0].last_update

    return utils.time_offset(-last_action) > action_interval