Merge "Allow to set resource type for aggregation"

This commit is contained in:
Jenkins 2015-12-01 15:44:01 +00:00 committed by Gerrit Code Review
commit 6639e51e76
3 changed files with 10 additions and 3 deletions

View File

@ -211,6 +211,7 @@ class MetricClientTest(base.ClientTestBase):
result = self.gnocchi(
'measures', params=("--debug aggregation "
"--query \"id='metric-res'\" "
"--resource-type \"generic\" "
"-m metric-name "
"--aggregation mean "
"--needed-overlap 0 "

View File

@ -158,7 +158,7 @@ class MetricManager(base.Manager):
def aggregation(self, metrics, query=None,
start=None, stop=None, aggregation=None,
needed_overlap=None):
needed_overlap=None, resource_type="generic"):
"""Get measurements of a aggregated metrics
:param metrics: IDs of metric or metric name
@ -171,6 +171,8 @@ class MetricManager(base.Manager):
:type stop: timestamp
:param aggregation: aggregation to retrieve
:type aggregation: str
:param resource_type: type of resource for the query
:type resource_type: str
See Gnocchi REST API documentation for the format
of *query dictionary*
@ -192,7 +194,8 @@ class MetricManager(base.Manager):
params=params).json()
else:
return self._post(
"v1/aggregation/resource/generic/metric/%s?%s" % (
metrics, utils.dict_to_querystring(params)),
"v1/aggregation/resource/%s/metric/%s?%s" % (
resource_type, metrics,
utils.dict_to_querystring(params)),
headers={'Content-Type': "application/json"},
data=jsonutils.dumps(query)).json()

View File

@ -183,6 +183,8 @@ class CliMeasuresAggregation(lister.Lister):
help=("percent of datapoints in each "
"metrics required"))
parser.add_argument("--query", help="Query"),
parser.add_argument("--resource-type", default="generic",
help="Resource type to query"),
return parser
def take_action(self, parsed_args):
@ -200,5 +202,6 @@ class CliMeasuresAggregation(lister.Lister):
start=parsed_args.start,
stop=parsed_args.stop,
needed_overlap=parsed_args.needed_overlap,
resource_type=parsed_args.resource_type,
)
return self.COLS, measures