你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
Bicep 资源定义
可以使用目标操作部署预算资源类型:
有关每个 API 版本中已更改属性的列表,请参阅 更改日志。
资源格式
若要创建 Microsoft.Consumption/budgets 资源,请将以下 Bicep 添加到模板。
resource symbolicname 'Microsoft.Consumption/budgets@2024-08-01' = {
scope: resourceSymbolicName or scope
eTag: 'string'
name: 'string'
properties: {
amount: int
category: 'string'
filter: {
and: [
{
dimensions: {
name: 'string'
operator: 'string'
values: [
'string'
]
}
tags: {
name: 'string'
operator: 'string'
values: [
'string'
]
}
}
]
dimensions: {
name: 'string'
operator: 'string'
values: [
'string'
]
}
tags: {
name: 'string'
operator: 'string'
values: [
'string'
]
}
}
notifications: {
{customized property}: {
contactEmails: [
'string'
]
contactGroups: [
'string'
]
contactRoles: [
'string'
]
enabled: bool
locale: 'string'
operator: 'string'
threshold: int
thresholdType: 'string'
}
}
timeGrain: 'string'
timePeriod: {
endDate: 'string'
startDate: 'string'
}
}
}
属性值
Microsoft.Consumption/budgets (英文)
| 名字 | 描述 | 价值 |
|---|---|---|
| eTag 标签 | 资源的 eTag。 若要处理并发更新方案,此字段将用于确定用户是否正在更新最新版本。 | 字符串 |
| 名字 | 资源名称 | string (必需) |
| 性能 | 预算的属性。 | BudgetProperties |
| 作用域 | 在与部署范围不同的范围内创建资源时使用。 | 将此属性设置为资源的符号名称,以应用 扩展资源。 |
BudgetComparisonExpression
| 名字 | 描述 | 价值 |
|---|---|---|
| 名字 | 要进行比较的列的名称。 | string (必需) |
| 操作员 | 要用于比较的运算符。 | “In”(必需) |
| 值 | 要用于比较的值数组 | string[] (必需) |
预算过滤器
| 名字 | 描述 | 价值 |
|---|---|---|
| 和 | 逻辑“AND”表达式。 必须至少有 2 个项目。 | BudgetFilterProperties[] |
| 尺寸 | 具有维度的比较表达式 | BudgetComparisonExpression |
| 标签 | 具有标记的比较表达式 | BudgetComparisonExpression |
BudgetFilterProperties
| 名字 | 描述 | 价值 |
|---|---|---|
| 尺寸 | 具有维度的比较表达式 | BudgetComparisonExpression |
| 标签 | 具有标记的比较表达式 | BudgetComparisonExpression |
BudgetProperties
| 名字 | 描述 | 价值 |
|---|---|---|
| 量 | 用于跟踪预算的总成本 | int (必需) |
| 分类 | 预算类别,无论是预算跟踪成本还是使用情况。 | “成本”(必需) |
| 筛选器 | 可用于按用户指定的维度和/或标记筛选预算。 | 预算过滤器 |
| 通知 | 与预算关联的通知字典。 预算最多可以有五个通知。 | BudgetProperties通知 |
| timeGrain | 预算涵盖的时间。 将根据时间粒度重置对金额的跟踪。 仅 WD 客户支持 BillingMonth、BillingQuarter 和 BillingAnnual | “每年” “BillingAnnual” “BillingMonth” “BillingQuarter” “Monthly” “季度”(必需) |
| 时间周期 | 预算的开始日期和结束日期。 开始日期必须是月份的第一个,并且应小于结束日期。 预算开始日期必须在 2017 年 6 月 1 日或之后。 未来的开始日期不应超过 12 个月。 应在时间段内选择过去的开始日期。 结束日期没有限制。 | BudgetTimePeriod (必需) |
BudgetProperties通知
| 名字 | 描述 | 价值 |
|---|
预算时间周期
| 名字 | 描述 | 价值 |
|---|---|---|
| 结束日期 | 预算的结束日期。 如果未提供,则从开始日期默认为 10 年。 | 字符串 |
| 开始日期 | 预算的开始日期。 | string (必需) |
通知
| 名字 | 描述 | 价值 |
|---|---|---|
| 联系电子邮件 | 用于在超出阈值时将预算通知发送到的电子邮件地址。 必须在订阅或资源组范围内至少指定一个联系人电子邮件或联系人组。 所有其他范围必须至少指定一个联系人电子邮件。 | string[] (必需) |
| contact组 | 要向超出阈值时发送预算通知的操作组。 必须以完全限定的 Azure 资源 ID 的形式提供。仅在订阅或资源组范围内受支持。 | 字符串[] |
| contact角色 | 联系角色,将预算通知发送到超出阈值时。 | 字符串[] |
| 启用 | 通知已启用或不启用。 | bool (必需) |
| 区域设置 | 收件人接收通知的语言 | “cs-cz” “da-dk” “de-de” “en-gb” “en-us” “es-es” “fr-fr” “hu-hu” “it-it” “ja-jp” “ko-kr” “nb-no” “nl-nl” “pl-pl” “pt-br” “pt-pt” “ru-ru” “sv-se” “tr-tr” “zh-cn” “zh-tw” |
| 操作员 | 比较运算符。 | “EqualTo” “GreaterThan” “GreaterThanOrEqualTo”(必需) |
| 阈值 | 与通知关联的阈值。 当成本超出阈值时发送通知。 它始终是百分比,必须介于 0 到 1000 之间。 | int (必需) |
| thresholdType | 阈值的类型 | “Actual” “Forecasted” |
用法示例
Azure 验证模块
以下 Azure 验证模块 可用于部署此资源类型。
| 模块 | 描述 |
|---|---|
| 消费预算 | 用于消耗预算的 AVM 资源模块 |
Azure 快速入门示例
以下 Azure 快速入门模板 包含用于部署此资源类型的 Bicep 示例。
ARM 模板资源定义
可以使用目标操作部署预算资源类型:
有关每个 API 版本中已更改属性的列表,请参阅 更改日志。
资源格式
若要创建 Microsoft.Consumption/budgets 资源,请将以下 JSON 添加到模板。
{
"type": "Microsoft.Consumption/budgets",
"apiVersion": "2024-08-01",
"name": "string",
"eTag": "string",
"properties": {
"amount": "int",
"category": "string",
"filter": {
"and": [
{
"dimensions": {
"name": "string",
"operator": "string",
"values": [ "string" ]
},
"tags": {
"name": "string",
"operator": "string",
"values": [ "string" ]
}
}
],
"dimensions": {
"name": "string",
"operator": "string",
"values": [ "string" ]
},
"tags": {
"name": "string",
"operator": "string",
"values": [ "string" ]
}
},
"notifications": {
"{customized property}": {
"contactEmails": [ "string" ],
"contactGroups": [ "string" ],
"contactRoles": [ "string" ],
"enabled": "bool",
"locale": "string",
"operator": "string",
"threshold": "int",
"thresholdType": "string"
}
},
"timeGrain": "string",
"timePeriod": {
"endDate": "string",
"startDate": "string"
}
}
}
属性值
Microsoft.Consumption/budgets (英文)
| 名字 | 描述 | 价值 |
|---|---|---|
| apiVersion | API 版本 | '2024-08-01' |
| eTag 标签 | 资源的 eTag。 若要处理并发更新方案,此字段将用于确定用户是否正在更新最新版本。 | 字符串 |
| 名字 | 资源名称 | string (必需) |
| 性能 | 预算的属性。 | BudgetProperties |
| 类型 | 资源类型 | “Microsoft.Consumption/budgets” |
BudgetComparisonExpression
| 名字 | 描述 | 价值 |
|---|---|---|
| 名字 | 要进行比较的列的名称。 | string (必需) |
| 操作员 | 要用于比较的运算符。 | “In”(必需) |
| 值 | 要用于比较的值数组 | string[] (必需) |
预算过滤器
| 名字 | 描述 | 价值 |
|---|---|---|
| 和 | 逻辑“AND”表达式。 必须至少有 2 个项目。 | BudgetFilterProperties[] |
| 尺寸 | 具有维度的比较表达式 | BudgetComparisonExpression |
| 标签 | 具有标记的比较表达式 | BudgetComparisonExpression |
BudgetFilterProperties
| 名字 | 描述 | 价值 |
|---|---|---|
| 尺寸 | 具有维度的比较表达式 | BudgetComparisonExpression |
| 标签 | 具有标记的比较表达式 | BudgetComparisonExpression |
BudgetProperties
| 名字 | 描述 | 价值 |
|---|---|---|
| 量 | 用于跟踪预算的总成本 | int (必需) |
| 分类 | 预算类别,无论是预算跟踪成本还是使用情况。 | “成本”(必需) |
| 筛选器 | 可用于按用户指定的维度和/或标记筛选预算。 | 预算过滤器 |
| 通知 | 与预算关联的通知字典。 预算最多可以有五个通知。 | BudgetProperties通知 |
| timeGrain | 预算涵盖的时间。 将根据时间粒度重置对金额的跟踪。 仅 WD 客户支持 BillingMonth、BillingQuarter 和 BillingAnnual | “每年” “BillingAnnual” “BillingMonth” “BillingQuarter” “Monthly” “季度”(必需) |
| 时间周期 | 预算的开始日期和结束日期。 开始日期必须是月份的第一个,并且应小于结束日期。 预算开始日期必须在 2017 年 6 月 1 日或之后。 未来的开始日期不应超过 12 个月。 应在时间段内选择过去的开始日期。 结束日期没有限制。 | BudgetTimePeriod (必需) |
BudgetProperties通知
| 名字 | 描述 | 价值 |
|---|
预算时间周期
| 名字 | 描述 | 价值 |
|---|---|---|
| 结束日期 | 预算的结束日期。 如果未提供,则从开始日期默认为 10 年。 | 字符串 |
| 开始日期 | 预算的开始日期。 | string (必需) |
通知
| 名字 | 描述 | 价值 |
|---|---|---|
| 联系电子邮件 | 用于在超出阈值时将预算通知发送到的电子邮件地址。 必须在订阅或资源组范围内至少指定一个联系人电子邮件或联系人组。 所有其他范围必须至少指定一个联系人电子邮件。 | string[] (必需) |
| contact组 | 要向超出阈值时发送预算通知的操作组。 必须以完全限定的 Azure 资源 ID 的形式提供。仅在订阅或资源组范围内受支持。 | 字符串[] |
| contact角色 | 联系角色,将预算通知发送到超出阈值时。 | 字符串[] |
| 启用 | 通知已启用或不启用。 | bool (必需) |
| 区域设置 | 收件人接收通知的语言 | “cs-cz” “da-dk” “de-de” “en-gb” “en-us” “es-es” “fr-fr” “hu-hu” “it-it” “ja-jp” “ko-kr” “nb-no” “nl-nl” “pl-pl” “pt-br” “pt-pt” “ru-ru” “sv-se” “tr-tr” “zh-cn” “zh-tw” |
| 操作员 | 比较运算符。 | “EqualTo” “GreaterThan” “GreaterThanOrEqualTo”(必需) |
| 阈值 | 与通知关联的阈值。 当成本超出阈值时发送通知。 它始终是百分比,必须介于 0 到 1000 之间。 | int (必需) |
| thresholdType | 阈值的类型 | “Actual” “Forecasted” |
用法示例
Azure 快速入门模板
以下 Azure 快速入门模板 部署此资源类型。
Terraform (AzAPI 提供程序)资源定义
可以使用目标操作部署预算资源类型:
有关每个 API 版本中已更改属性的列表,请参阅 更改日志。
资源格式
若要创建 Microsoft.Consumption/budgets 资源,请将以下 Terraform 添加到模板。
resource "azapi_resource" "symbolicname" {
type = "Microsoft.Consumption/budgets@2024-08-01"
name = "string"
parent_id = "string"
body = {
eTag = "string"
properties = {
amount = int
category = "string"
filter = {
and = [
{
dimensions = {
name = "string"
operator = "string"
values = [
"string"
]
}
tags = {
name = "string"
operator = "string"
values = [
"string"
]
}
}
]
dimensions = {
name = "string"
operator = "string"
values = [
"string"
]
}
tags = {
name = "string"
operator = "string"
values = [
"string"
]
}
}
notifications = {
{customized property} = {
contactEmails = [
"string"
]
contactGroups = [
"string"
]
contactRoles = [
"string"
]
enabled = bool
locale = "string"
operator = "string"
threshold = int
thresholdType = "string"
}
}
timeGrain = "string"
timePeriod = {
endDate = "string"
startDate = "string"
}
}
}
}
属性值
Microsoft.Consumption/budgets (英文)
| 名字 | 描述 | 价值 |
|---|---|---|
| eTag 标签 | 资源的 eTag。 若要处理并发更新方案,此字段将用于确定用户是否正在更新最新版本。 | 字符串 |
| 名字 | 资源名称 | string (必需) |
| parent_id | 要向其应用此扩展资源的资源的 ID。 | string (必需) |
| 性能 | 预算的属性。 | BudgetProperties |
| 类型 | 资源类型 | “Microsoft.Consumption/budgets@2024-08-01” |
BudgetComparisonExpression
| 名字 | 描述 | 价值 |
|---|---|---|
| 名字 | 要进行比较的列的名称。 | string (必需) |
| 操作员 | 要用于比较的运算符。 | “In”(必需) |
| 值 | 要用于比较的值数组 | string[] (必需) |
预算过滤器
| 名字 | 描述 | 价值 |
|---|---|---|
| 和 | 逻辑“AND”表达式。 必须至少有 2 个项目。 | BudgetFilterProperties[] |
| 尺寸 | 具有维度的比较表达式 | BudgetComparisonExpression |
| 标签 | 具有标记的比较表达式 | BudgetComparisonExpression |
BudgetFilterProperties
| 名字 | 描述 | 价值 |
|---|---|---|
| 尺寸 | 具有维度的比较表达式 | BudgetComparisonExpression |
| 标签 | 具有标记的比较表达式 | BudgetComparisonExpression |
BudgetProperties
| 名字 | 描述 | 价值 |
|---|---|---|
| 量 | 用于跟踪预算的总成本 | int (必需) |
| 分类 | 预算类别,无论是预算跟踪成本还是使用情况。 | “成本”(必需) |
| 筛选器 | 可用于按用户指定的维度和/或标记筛选预算。 | 预算过滤器 |
| 通知 | 与预算关联的通知字典。 预算最多可以有五个通知。 | BudgetProperties通知 |
| timeGrain | 预算涵盖的时间。 将根据时间粒度重置对金额的跟踪。 仅 WD 客户支持 BillingMonth、BillingQuarter 和 BillingAnnual | “每年” “BillingAnnual” “BillingMonth” “BillingQuarter” “Monthly” “季度”(必需) |
| 时间周期 | 预算的开始日期和结束日期。 开始日期必须是月份的第一个,并且应小于结束日期。 预算开始日期必须在 2017 年 6 月 1 日或之后。 未来的开始日期不应超过 12 个月。 应在时间段内选择过去的开始日期。 结束日期没有限制。 | BudgetTimePeriod (必需) |
BudgetProperties通知
| 名字 | 描述 | 价值 |
|---|
预算时间周期
| 名字 | 描述 | 价值 |
|---|---|---|
| 结束日期 | 预算的结束日期。 如果未提供,则从开始日期默认为 10 年。 | 字符串 |
| 开始日期 | 预算的开始日期。 | string (必需) |
通知
| 名字 | 描述 | 价值 |
|---|---|---|
| 联系电子邮件 | 用于在超出阈值时将预算通知发送到的电子邮件地址。 必须在订阅或资源组范围内至少指定一个联系人电子邮件或联系人组。 所有其他范围必须至少指定一个联系人电子邮件。 | string[] (必需) |
| contact组 | 要向超出阈值时发送预算通知的操作组。 必须以完全限定的 Azure 资源 ID 的形式提供。仅在订阅或资源组范围内受支持。 | 字符串[] |
| contact角色 | 联系角色,将预算通知发送到超出阈值时。 | 字符串[] |
| 启用 | 通知已启用或不启用。 | bool (必需) |
| 区域设置 | 收件人接收通知的语言 | “cs-cz” “da-dk” “de-de” “en-gb” “en-us” “es-es” “fr-fr” “hu-hu” “it-it” “ja-jp” “ko-kr” “nb-no” “nl-nl” “pl-pl” “pt-br” “pt-pt” “ru-ru” “sv-se” “tr-tr” “zh-cn” “zh-tw” |
| 操作员 | 比较运算符。 | “EqualTo” “GreaterThan” “GreaterThanOrEqualTo”(必需) |
| 阈值 | 与通知关联的阈值。 当成本超出阈值时发送通知。 它始终是百分比,必须介于 0 到 1000 之间。 | int (必需) |
| thresholdType | 阈值的类型 | “Actual” “Forecasted” |
用法示例
Terraform 示例
部署消耗预算的基本示例。
terraform {
required_providers {
azapi = {
source = "Azure/azapi"
}
}
}
provider "azapi" {
skip_provider_registration = false
}
variable "resource_name" {
type = string
default = "acctest0001"
}
variable "location" {
type = string
default = "westus"
}
resource "azapi_resource" "resourceGroup" {
type = "Microsoft.Resources/resourceGroups@2020-06-01"
name = var.resource_name
location = var.location
}
resource "azapi_resource" "budget" {
type = "Microsoft.Consumption/budgets@2019-10-01"
parent_id = azapi_resource.resourceGroup.id
name = var.resource_name
body = {
properties = {
amount = 1000
category = "Cost"
filter = {
tags = {
name = "foo"
operator = "In"
values = ["bar"]
}
}
notifications = {
"Actual_EqualTo_90.000000_Percent" = {
contactEmails = ["foo@example.com", "bar@example.com"]
contactGroups = []
contactRoles = []
enabled = true
operator = "EqualTo"
threshold = 90
thresholdType = "Actual"
}
}
timeGrain = "Monthly"
timePeriod = {
startDate = "2025-08-01T00:00:00Z"
}
}
}
}