【问题标题】:How to get resource name from Azure Resource GUID?如何从 Azure 资源 GUID 获取资源名称?
【发布时间】:2015-10-09 13:06:07
【问题描述】:

我有 2 个 azure 订阅。今天,我突然发现2000卢比。从我的一个订阅中删除。当我开始调查消耗最大单位的资源时,我在预览门户上发现特定的 Resource Guid 已经消耗了最大数量。但我想知道哪个 Azure 资源(例如 VM 或 SQL DB 等)或哪个帐户用户(创建该资源的用户的登录 ID)正在吃这个量。

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

【问题讨论】:

    标签: azure billing azure-billing-api


    【解决方案1】:

    很遗憾,新 Azure 门户中“资源成本”边栏选项卡上的“资源 Guid”属性只是用于对特定资源进行计费的部署 GUID,不能直接用于标识资源名称。

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

    计费电表标识符。这用作为计费使用定价的标识符。

    如果您想手动知道您被计费的资源名称,您可以登录Azure Account Center,点击“计费历史”并下载当前期间的使用详情。此信息每天都会更新,您甚至可以获得每日细分的使用信息。

    【讨论】:

    • 您的回答节省了我的时间。在 Azure 帐户中心,我可以下载使用详情。在使用详情中,我可以找到哪个服务要花钱。谢谢。
    【解决方案2】:

    如前所述,在 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 的获取可能需要很长时间,因此我总是将其拉下一次并将其放入变量中,然后从那里执行过滤和搜索。通常,您需要过滤 Unique ResourceId,然后将该 ID 的所有 BillingDetails 相加,这样您就可以准确计算出每个资源的成本。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-01-30
      • 1970-01-01
      • 2011-03-29
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多