def _create_metric(self, metric): # TODO(jd) A container per user in their account? resp = {} self.swift.put_container(self._container_name(metric), response_dict=resp) # put_container() should return 201 Created; if it returns 204, that # means the metric was already created! if resp['status'] == 204: raise storage.MetricAlreadyExists(metric)
def _create_metric(self, metric): path = self._build_metric_dir(metric) try: os.mkdir(path, 0o750) except OSError as e: if e.errno == errno.EEXIST: raise storage.MetricAlreadyExists(metric) raise for agg in metric.archive_policy.aggregation_methods: try: os.mkdir(self._build_metric_path(metric, agg), 0o750) except OSError as e: if e.errno != errno.EEXIST: raise
def _create_metric(self, metric): name = "gnocchi_%s_container" % metric.id if self._object_exists(name): raise storage.MetricAlreadyExists(metric) else: self.ioctx.write_full(name, "metric created")
def _create_metric(self, metric): name = self._build_unaggregated_timeserie_path(metric, 3) if self._object_exists(name): raise storage.MetricAlreadyExists(metric) else: self.ioctx.write_full(name, b"")
def _create_metric(self, metric): key = self._metric_key(metric) if self._client.exists(key): raise storage.MetricAlreadyExists(metric) self._client.hset(key, self._unaggregated_field(), '')