我需要监控每个客户端环境(一个订阅,多个资源组)的Azure支出。在我的研究中,我发现了2个可以使用的API:
对于第一个,我可以获得每个天蓝色资源的价格,这真的很有趣。但我无法找到一种方法来了解哪些资源与资源组相关。 我至少需要资源的名称。它是否喜欢“MeterId”信息?
在第二个中,我可以获得所有azure资源的用法。这是完美的 !但是如何在价格中转换资源使用?
在新的azure门户网站(portal.azure.com)中,资源组中有一个部分:结算部分。
这正是我想要使用您的API获取的信息。这是一种方式吗?
答案 0 :(得分:2)
对于您的第一个问题,RateCard API会返回Azure优惠级别(即用即付,MSDN,......)上可用的资源列表,这不是特定于客户的订阅,所以您会返回此处是可在报价下进行结算的所有资源的列表,以及资源元数据和价格,并且这将不具有特定于客户订阅的资源组等详细信息。还有一点需要注意的是,资源元数据字段(如Meter Name,Meter Category,Meter SubCategory)可以让客户更好地了解他们正在使用的资源,但这不包括特定于实例的详细信息resourceURI或资源标记。 / p>
关于Usage API的第二个问题,此API返回聚合的未评级用法。期望客户从Usage API获取汇总的使用数据,然后从RateCard API获取客户报价的公共费率,然后执行将使用率与费率详细信息相结合的操作,以得出额定估计值
步骤如下:
1)具有特定时间段的呼叫使用API和AzureSubID
2)从Azure帐户门户获取OfferID(转到account.windowsazure.com,选择您感兴趣的订阅,右下角包含所有子细节,包括'OfferID'(例如MS-AZR- 0063P)
3)使用OfferID,国家,地区,货币查询RateCard API,以获取该优惠可供出售的所有资源的列表,以及相关费率,包含数量,折扣等
4)这两个响应的共同字段是MeterID。您将获得具有唯一MeterID的使用响应,您可以使用该MeterID查找RAteCard API(在RateCard中也称为MeterID)以获得适用于此子目录的准确费率。
我们正在寻找另一项改进措施,以便在结算周期内查询Azure Usage API,这样客户就无需按日期范围进行查询,他们可以选择查询特定结算周期的使用情况数据他们在那段时间收费的快照,但我们还没有时间表。