首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Azure EA订阅-计费报告

Azure EA订阅-计费报告
EN

Stack Overflow用户
提问于 2017-01-09 13:55:53
回答 1查看 633关注 0票数 2

尝试通过powershell获取azure计费报告,在开始之前要求提供注册号和访问密钥,注册密钥可以从https://ea.azure.com中找到,但是访问密钥在任何地方都没有明确提到,如果它可以从存储帐户获得,那么我有超过20个不同资源的存储帐户。

任何曾致力于通过powershell检索账单EA详细信息的建议。

EN

回答 1

Stack Overflow用户

发布于 2017-01-09 14:52:58

我想让你通过Gordon Byers

示例:

代码语言:javascript
复制
$baseurl = "https://ea.azure.com/rest/"
$enrollmentNo ="100"
$accesskey ="eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIng1dCI6Il92ZHZieDJYRUkyb2l5N09abVpVelZGelM2TSJ9.eyJpc3MiOiJlYS5taWNyb3NvZnRhenVyZS5jb20iLCJhdWQiOiJjbGllbnQuZWEubWljcm9zb2Z0YXp1cmUuY29tIiwibmJmIjoxNDI4NDYwOTgxLCJleHAiOjE0NDQyNzIxODEsIkVucm9sbG1lbnROdW1iZXIiOiIxMDAiLCJJZCI6Ijk3OGQ5MGRjLTEyZjUtNDVmZC1hZWY2LWNiZTQ0ZDE0NmFmNiIsIlJlcG9ydFZpZXciOiJTeXN0ZW0iLCJQYXJ0bmVySWQiOiIifQ.QEHdbHmUz4TXO8Ljhn8ktnt5m7rHO0hsRrDLTvoQP4luL-8gy98CywFi2OByhfPL6UY5Vx8MYtwTQhMbzefS6Cd8hNopP74AL1ENLT-WGn42JG2mWesizIuN1QHV-obZR5rKDT57leurgEWy3LscWlwM0v5vhtk-9e5p8_9YgYqnF3rC05l1kUBQYzEIeYeMxcp8YxsqlnQNoEdCIA4UN08Py7zjr0ohCYbkm76a0-XdquqOTdSKGrnFkmwPxzjWMkuX3f2zpck_Ps8x8TVBpfvywly0QjUbN0ssmLV20zrS8FqkKSdx13uQVzM3MXCBylu5WvhTKE_ogRJdxPpfiA"
$authHeaders = @{"authorization"="bearer $accesskey";"api-version"="1.0"}

Write-Host "Summary info"
$url= $baseurl + $enrollmentNo + "/usage-reports"
$sResponse = Invoke-WebRequest $url -Headers $authHeaders
$sContent = $sResponse.Content | ConvertFrom-Json 
#$sContent.AvailableMonths

Write-Host "Detailed Month info"
#$month="2015-04"
$month=$sContent.AvailableMonths[0].Month
$url= $baseurl + $enrollmentNo + "/usage-report?month=$month&type=detail"
$mResponse = Invoke-WebRequest $url -Headers $authHeaders

#Split the response up into an array from a string
$mContent = ($mResponse.Content -split '[rn]')

#Convert from CSV to object
$mCsv = $mContent | Where-Object { [regex]::matches($_,",").count -gt 28} | ConvertFrom-Csv
#$mCsv = $mcontent[4..$($mcontent.count)] | ConvertFrom-Csv

#$mCsv | Select-Object ServiceResource, Service, Product, date, ResourceQtyConsumed, ResourceRate, ExtendedCost  | ft

$filterDay =$mCsv[-1].Date
Write-Host "Examining for single day $filterDay"
$aday = $mCsv | Where-Object {$_.date -eq $filterDay}
$aday | Select-Object  Product, date, ResourceQtyConsumed, ResourceRate, ExtendedCost | Sort-Object ExtendedCost -Descending | ft

$adayCost = [math]::round($($aday | Select-Object -ExpandProperty ExtendedCost | Measure-Object -Sum).sum,2)
Write-Host "Azure Cost for $filterDay = £$adayCost" 

$monthCost = [math]::round($($mCsv | Select-Object -ExpandProperty ExtendedCost | Measure-Object -Sum).sum,2)
Write-Host "Azure Cost for $month = £$monthCost"

注意:在那里给出的链接中也提到了API指南。这是Azure计费API的最佳方式之一

希望能有所帮助。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/41541793

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档