自動建立預算

您可以使用預算 API,將預算的建立作業自動化。 您也可以使用預算範本來建立預算。 範本可讓您輕鬆地將 Azure 部署標準化,同時確保會正確設定和強制執行成本控制。

一般的預算 API 設定

有許多方法可在您的 Azure 環境中設定預算。 請先考慮您的案例,然後再找出可實現該案例的設定選項。 檢閱下列選項:

  • 時間粒紋 - 代表您的預算用來產生和評估成本的週期性期間。 最常見的選項有 [每月]、[每季] 和 [每年]。
  • 時間週期 - 代表預算的有效時間長度。 預算會主動監視,並且只有在仍然有效時才會向您發出警示。
  • 通知
    • 連絡人電子郵件 - 當預算產生成本且超過定義的限額時,電子郵件地址就會收到警示。
    • 連絡人角色 - 在給定範圍上具有相符 Azure 角色的所有使用者都會透過此選項而收到電子郵件警示。 例如,訂用帳戶擁有者會收到在訂用帳戶範圍上所建立預算的警示。
    • 連絡人群組 - 當超過警示限額時,預算會呼叫已設定的動作群組。
  • 成本維度篩選 - 您可以在成本分析或查詢 API 中執行的相同篩選,也可以在您的預算上進行。 使用此篩選可減少您所監視的預算成本範圍。

找出符合您需求的預算建立選項之後,請使用 API 建立預算。 下列範例可協助您開始使用一般的預算設定。

建立篩選為多個資源和標籤的預算

要求 URL:PUT https://management.azure.com/subscriptions/{SubscriptionId}/providers/Microsoft.Consumption/budgets/{BudgetName}/?api-version=2019-10-01

{
  "eTag": "\"1d34d016a593709\"",
  "properties": {
    "category": "Cost",
    "amount": 100.65,
    "timeGrain": "Monthly",
    "timePeriod": {
      "startDate": "2017-10-01T00:00:00Z",
      "endDate": "2018-10-31T00:00:00Z"
    },
    "filter": {
      "and": [
        {
          "dimensions": {
            "name": "ResourceId",
            "operator": "In",
            "values": [
              "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{meterName}",
              "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{meterName}"
            ]
          }
        },
        {
          "tags": {
            "name": "category",
            "operator": "In",
            "values": [
              "Dev",
              "Prod"
            ]
          }
        },
        {
          "tags": {
            "name": "department",
            "operator": "In",
            "values": [
              "engineering",
              "sales"
            ]
          }
        }
      ]
    },
    "notifications": {
      "Actual_GreaterThan_80_Percent": {
        "enabled": true,
        "operator": "GreaterThan",
        "threshold": 80,
        "contactEmails": [
          "user1@contoso.com",
          "user2@contoso.com"
        ],
        "contactRoles": [
          "Contributor",
          "Reader"
        ],
        "contactGroups": [
          "/subscriptions/{subscriptionID}/resourceGroups/{resourceGroupName}/providers/microsoft.insights/actionGroups/{actionGroupName}
        ],
        "thresholdType": "Actual"
      }
    }
  }
}

預算警示電子郵件支援的地區設定

有了預算,當成本超過設定的閾值時會收到警示。 每個預算對多可以設定五個電子郵件收件者。 收件者會在超過預算閾值的 24 小時內收到電子郵件警示。 不過,您的收件者可能需要收到不同語言的電子郵件。 您可以搭配預算 API 使用下列語言文化特性代碼。 使用與下列範例類似的 locale 參數來設定文化特性代碼。

{
  "eTag": "\"1d681a8fc67f77a\"",
  "properties": {
    "timePeriod": {
      "startDate": "2020-07-24T00:00:00Z",
      "endDate": "2022-07-23T00:00:00Z"
    },
    "timeGrain": "BillingMonth",
    "amount": 1,
    "currentSpend": {
      "amount": 0,
      "unit": "USD"
    },
    "category": "Cost",
    "notifications": {
      "actual_GreaterThan_10_Percent": {
        "enabled": true,
        "operator": "GreaterThan",
        "threshold": 20,
        "locale": "en-us",
        "contactEmails": [
          "user@contoso.com"
        ],
        "contactRoles": [],
        "contactGroups": [],
        "thresholdType": "Actual"
      }
    }
  }
}

文化特性代碼支援的語言:

文化特性代碼 語言
en-us 英文 (美國)
ja-jp 日文 (日本)
zh-cn 中文 (簡體,中國)
de-de 德文 (德國)
es-es 西班牙文 (西班牙,國際)
fr-fr 法文 (法國)
it-it 義大利文 (義大利)
ko-kr 韓文 (韓國)
pt-br 葡萄牙文 (巴西)
ru-ru 俄文 (俄羅斯)
zh-tw 中文 (繁體,台灣)
cs-cz 捷克文 (捷克共和國)
pl-pl 波蘭文 (波蘭)
tr-tr 土耳其文 (Türkiye)
da-dk 丹麥文 (丹麥)
en-gb 英文 (英國)
hu-hu 匈牙利文 (匈牙利)
nb-no 挪威文 (巴克摩) (挪威)
nl-nl 荷蘭文 (荷蘭)
pt-pt 葡萄牙文 (葡萄牙)
sv-se 瑞典文 (瑞典)

針對預算警示來設定成本型協調流程

您可以設定預算,以使用 Azure 動作群組來啟動自動化動作。 若要深入了解如何使用預算將動作自動化,請參閱使用預算進行自動化

下一步