Merge "Add support for query cost by service"

This commit is contained in:
Jenkins
2016-03-04 11:04:01 +00:00
committed by Gerrit Code Review
2 changed files with 8 additions and 2 deletions

View File

@@ -30,7 +30,7 @@ class ReportManager(base.Manager):
def list_tenants(self):
return self.client.get(self.base_url + "/tenants").json()
def get_total(self, tenant_id=None, begin=None, end=None):
def get_total(self, tenant_id=None, begin=None, end=None, service=None):
url = self.base_url + "/total"
filters = list()
if tenant_id:
@@ -39,6 +39,8 @@ class ReportManager(base.Manager):
filters.append("begin=%s" % begin.isoformat())
if end:
filters.append("end=%s" % end.isoformat())
if service:
filters.append("service=%s" % service)
if filters:
url += "?%s" % ('&'.join(filters))
return self.client.get(url).json()

View File

@@ -36,11 +36,15 @@ def do_report_tenant_list(cc, args):
@utils.arg('-e', '--end',
help='End timestamp',
required=False)
@utils.arg('-s', '--service',
help='Service Type',
required=False)
def do_total_get(cc, args):
"""Get total reports."""
begin = utils.ts2dt(args.begin) if args.begin else None
end = utils.ts2dt(args.end) if args.end else None
total = cc.reports.get_total(tenant_id=args.total_tenant_id,
begin=begin,
end=end)
end=end,
service=args.service)
utils.print_dict({'Total': total or 0.0})