Python 使用azure计费API/SDK显示azure成本分析数据
在Azure portal中,如果选择了一个订阅,则可以像下面的屏幕截图一样查看成本分析 我希望以编程方式获取信息,就像上面显示的信息一样,可能正在使用一些pythonsdkapi/restapi。 如果有人对此有任何经验/想法,请帮助 在浏览了回复之后,我已经浏览了Azure Billing Rest API,现在我可以调用Usage Agrgate和RateCard相关的Rest API 以下是这些REST调用的结果 但老实说,我还没有弄清楚如何像成本分析那样为我提供详细的视图,每个资源的相关成本可以显示在哪里。实际上,我对Azure非常陌生,这可能就是我在某些地方缺少链接的原因Python 使用azure计费API/SDK显示azure成本分析数据,python,azure,azure-billing-api,azure-sdk,azure-sdk-python,Python,Azure,Azure Billing Api,Azure Sdk,Azure Sdk Python,在Azure portal中,如果选择了一个订阅,则可以像下面的屏幕截图一样查看成本分析 我希望以编程方式获取信息,就像上面显示的信息一样,可能正在使用一些pythonsdkapi/restapi。 如果有人对此有任何经验/想法,请帮助 在浏览了回复之后,我已经浏览了Azure Billing Rest API,现在我可以调用Usage Agrgate和RateCard相关的Rest API 以下是这些REST调用的结果 但老实说,我还没有弄清楚如何像成本分析那样为我提供详细的视图,每个资源
有人能给点提示吗?下面有一些官方文档,用于使用Python SDK或Python中的REST API检索账单数据
计费
REST API,请参阅,您可以尝试使用Python包请求
来获取这些数据希望能有帮助。如有任何问题,请随时通知我。如果您已经拥有使用情况和费率卡数据,则必须将它们合并。从使用数据中提取meterId并获取相关的费率卡数据。费率卡数据包含您必须采取的费率和包含的数量。可能有多个电表费率和包含的数量,因为每次使用可能有不同的成本(例如,前10次免费呼叫,3 GB免费呼叫,…)。消耗在本月14日开始/重置。这就是为什么您必须读取整个计费周期(从每月14日开始)的数据的原因,因为这是获得正确消费的唯一方法 因此,如果您正在使用Azure功能,并且您每天的使用量为100.000个单位,并且您希望从20日到30日支付成本,那么计算如下: 从14号到30号读取数据。这是17天,因此它使用了1700000个单位。 前400.000是免费的=包含数量(因此在本示例中,前4天为免费)。从400.001单位开始,您必须采用电表费率(00000134928欧元)并计算成本。1.300.000 * 0,0000134928 = ~17,54€. 幸运的是,azure函数只有一个速率。如果费率发生变化(例如,在5.000.000个单位之后),则您还必须考虑到这一点。 如果你有全部成本,那么你可以在你的日期20-30过滤。你会得到结果的 这是对计算的简短解释。我在C#中实现了这个计算,并将其作为NuGet包发布。源代码在github上-可能会有所帮助。它还包含一个示例控制台,可用于导出数据
- 资料来源:
- 博文:
- 我也有同样的问题。但不幸的是,python SDK太难使用了
此外,您在谷歌上找不到可用的样本或示例
因此,我选择使用restapi而不是pythonsdk
使用python代码,您可以首先执行此操作
import requests
from azure.common.credentials import ServicePrincipalCredentials
并设置标题pyload和url
headers = {
"Content-Type": "application/json",
"Authorization": <token> }
标题={
“内容类型”:“应用程序/json”,
“授权”:
您可以通过凭据获取令牌,凭据由客户端id、secret和租户生成。
credentials.token()将返回可在标头中使用的令牌
访问Azure dashboard时,您可以在Chrome中找到restapi或使用F12。现在作为SDK计费,无需请求:)。仅供参考。最后请注意,这是插入CLI中的。如果使用CLI cmdlet获得所需的功能,这意味着您可以在Python SDK中获得相同的结果。在我在使用率聚合和费率卡上使用Azure Billing REST API取得一些进展后,编辑了我的初始问题。但仍有疑问。根据有关使用率聚合和费率卡API将如何提供详细视图的任何输入更新了初始问题,就像成本分析一样资源可以显示多少相关成本?请让我知道。嘿,这是个好消息。你能告诉我你从哪里得到关于如何计算不同电表费率的信息吗?我查了一下文件,但找不到。如果你能分享你的消息来源那就太好了。谢谢。我想没有文件。当我写代码时,我自己发现了。我检查了API和从API获得的数据。API概述包含一个简短的信息,您需要将ratecard和使用API数据结合起来,因此我考虑了什么对我有意义,并以这种方式实现了它。我把结果和账单核对了一遍,结果相符。我能提供的唯一链接是:这有助于解释如何使用Azure API进行身份验证,但它没有回答问题(如何以编程方式获取成本/账单数据)。@PaulJ您可以在web上找到成本/账单数据,并在Chorme中通过F12查看成本URL。然后,在Azure的API Explorer中找到URL,并使用Python请求获取成本/账单数据一旦我们拥有凭证,我们就可以通过Python请求调用Azure中的任何API。Python SDK基本上通过REST请求获取信息。使用Python SDK,只需使用
az login
登录,然后通过get_client_from_cli_profile(参考资料)获取客户机即可