如何使用 Azure 的使用量 API 从使用量和 meterRates 中获取项目成本?

How to get the cost of a project from the usage quantity & meterRates using Azure's usage API?

使用Microsoft Azure的计费和使用API,我看到我们可以从价目表API中获取项目资源的使用数量和资源消耗的费率。但是,价目表 API 在某些情况下具有键值对列表。

例如,考虑以下 MeterRates

"MeterRates": {
                "0": 0.0832,
                "1024": 0.0819,
                "51200": 0.0806,
                "512000": 0.0794,
                "1024000": 0.0775,
                "5120000": 0.0775
            },

这里假设使用数量是102400;这是否意味着使用该资源的成本将是 102400 * 0.0784(102400 - 1023) * 0.0832 + (102400 - 1023 - 51200) * 0.0819

N.B.:关于 the billing and usage API 的 github 存储库,我有一个问题。

Here, if the usage quantity is, say, 102400; does it mean the cost of using the resource will be 102400 * 0.0784 or (102400 - 1023) * 0.0832 + (102400 - 1023 - 51200) * 0.0819?

它实际上更像是: 1023 * 0.0832 + 50176 * 0.0819 + 460800 * 0.0794 + 512000 * 0.0775

本质上,这些是定价等级,因此您阅读它们的方式是从 0 到 1023,即 0.0832/单位。从 1024 - 51200,它将是 0.0819 个单位,依此类推。

+1 到 Gaurav 的回复!

RateCard 遵循分层定价,这意味着如果对特定资源进行评级有多个层级,则每个层级中的每个使用子集的评级都不同。

再举个例子,消耗数量=250

让我们假设利率:

0:1 200:0.9 500: 0.8

这意味着单位 0 – 199 的使用量应为每单位 1,200 – 499 为每单位 0.9,500+ 为每单位 0.8。

消耗数量 250 的计费方式为:51*0.9 + 199 * 1 = 244.9