如何从Azure资源GUID获取资源名称?

时间:2015-07-20 12:02:28

标签: azure billing azure-billing-api

我有2个azure subsription。今天,我发现突然2000卢比。从我的一个替代品中解脱出来。当我开始调查已消耗最大单位的资源时,我在预览门户网站上发现,特定的资源指南已经吃掉了最大数量。但我想知道哪个Azure资源(例如VM或SQL DB等)或哪个accout用户(创建该资源的用户的登录ID)正在吃这个数量。

还有一件事,我发现这种突然成本削减的事情几乎在同一天剩下大约13到14天的订阅。那么每3周之后是否有任何计费周期或类似的东西?

2 个答案:

答案 0 :(得分:11)

不幸的是,新Azure门户中“资源成本”刀片上的“资源指导”属性仅仅是针对特定资源进行计费的部署GUID,不能直接用于标识资源名称。

如果您参考页面Understand your bill for Microsoft Azure,您可以看到“资源GUID”属性的说明:

  

计费的计费器标识符。这用作用于为结算使用定价的标识符。

如果您想手动了解要为其付费的资源名称,可以登录Azure Account Center,点击“结算历史记录”并下载当前期间的使用详情。这些信息每天都在更新,您甚至可以获得每日细分的使用信息。

答案 1 :(得分:0)

如前所述,在PowerShell中表示的ResourceGuid或MeterId不一定是特定资源唯一的,而是一类事物的唯一ID(例如B2ms虚拟机实例的运行时间) 。但是,您可以通过Get-AzConsumptionUsageDetail Commandlet

获取ResourceId。

例如,如果您要获取ResourceGuid“ 7a65b178-2133-400b-8e4c-7b8eeda86d81”(which corresponds to running hours for a Standard_A2_v2 VM instance, BTW)的实例列表

$BillName = "202010-1"
$ResourceGuid = "7a65b178-2133-400b-8e4c-7b8eeda86d81"
Get-AzConsumptionUsageDetail -IncludeMeterDetails -IncludeAdditionalProperties -BillingPeriodName $BillName | Where-Object {$_.SubscriptionGuid -eq (Get-AzContext).Subscription.Id} | Where-Object {$_.MeterId -eq $ResourceGuid} | Select-Object -Property InstanceId -Unique

获取Get-AzConsumptionUsageDetail可能会花费很长时间,因此我总是将其下拉一次并将其放入变量中,然后从此处进行过滤和搜索。通常,您想要的是对唯一资源ID进行过滤,然后将所有ID的BillingDetails加起来,这样您就可以准确确定每种资源的成本。