The gnocchiclient.v1.metric Module

class gnocchiclient.v1.metric.MetricManager(client)

Bases: gnocchiclient.v1.base.Manager

add_measures(metric, measures, resource_id=None)

Add measurements to a metric.

Parameters:
  • metric (str) – ID or Name of the metric
  • resource_id (str) – ID of the resource (required to get a metric by name)
  • measures (list of dict(timestamp=timestamp, value=float)) – measurements
aggregation(metrics, query=None, start=None, stop=None, aggregation=None, reaggregation=None, granularity=None, needed_overlap=None, resource_type='generic', groupby=None, refresh=False, resample=None, fill=None)

Get measurements of an aggregated metrics.

Parameters:
  • metrics – IDs of metric or metric name
  • query (dict) – The query dictionary
  • start (timestamp) – beginning of the period
  • stop (timestamp) – end of the period
  • aggregation (str) – granularity aggregation function to retrieve
  • reaggregation (str) – groupby aggregation function to retrieve
  • granularity (int) – granularity to retrieve (in seconds)
  • needed_overlap (float) – percent of datapoints in each metrics required
  • resource_type (str) – type of resource for the query
  • groupby (list) – list of attribute to group by
  • refresh (bool) – force aggregation of all known measures
  • resample (float) – resample measures to new granularity
  • fill (float or 'null') – value to use when backfilling missing datapoints

See Gnocchi REST API documentation for the format of query dictionary http://docs.openstack.org/developer/gnocchi/rest.html#searching-for-resources

batch_metrics_measures(measures)

Add measurements to metrics.

Parameters:measures – measurements
batch_resources_metrics_measures(measures, create_metrics=False)

Add measurements to named metrics if resources.

Parameters:measures – measurements
create(metric=None, refetch_metric=True, name=None, archive_policy_name=None, resource_id=None, unit=None)

Create an metric.

Parameters:
  • name (str) – Metric name.
  • archive_policy_name (str) – Archive policy name.
  • resource_id (str) – The resource ID to attach the metric to.
  • unit (str) – The unit of the metric.
delete(metric, resource_id=None)

Delete an metric.

Parameters:
  • metric (str) – ID or Name of the metric
  • resource_id (str) – ID of the resource (required to get a metric by name)
get(metric, resource_id=None)

Get an metric.

Parameters:
  • metric (str) – ID or Name of the metric
  • resource_id (str) – ID of the resource (required to get a metric by name)
get_measures(metric, start=None, stop=None, aggregation=None, granularity=None, resource_id=None, refresh=False, resample=None, **kwargs)

Get measurements of a metric.

Parameters:
  • metric (str) – ID or Name of the metric
  • start (timestamp) – beginning of the period
  • stop (timestamp) – end of the period
  • aggregation (str) – aggregation to retrieve
  • granularity (int) – granularity to retrieve (in seconds)
  • resource_id (str) – ID of the resource (required to get a metric by name)
  • refresh (bool) – force aggregation of all known measures
  • resample (float) – resample measures to new granularity

All other arguments are arguments are dedicated to custom aggregation method passed as-is to the Gnocchi.

list(limit=None, marker=None, sorts=None)

List metrics.

Parameters:
  • limit (int) – maximum number of resources to return
  • marker (str) – the last item of the previous page; we return the next results after this value.
  • sorts (list of str) – list of resource attributes to order by. (example [“user_id:desc-nullslast”, “project_id:asc”]
metric_batch_url = 'v1/batch/metrics/measures'
metric_url = 'v1/metric/'
resource_url = 'v1/resource/generic/%s/metric/'
resources_batch_url = 'v1/batch/resources/metrics/measures'