Udostępnij przez


Budgets - Create Or Update

Operacja tworzenia lub aktualizowania budżetu. Opcjonalnie możesz podać element eTag w razie potrzeby jako formę kontrolki współbieżności. Aby uzyskać najnowszy element eTag dla danego budżetu, wykonaj operację pobierania przed operacją umieszczania.

PUT https://management.azure.com/{scope}/providers/Microsoft.Consumption/budgets/{budgetName}?api-version=2024-08-01

Parametry identyfikatora URI

Nazwa W Wymagane Typ Opis
budgetName
path True

string

Nazwa budżetu.

scope
path True

string

W pełni kwalifikowany identyfikator zasobu usługi Azure Resource Manager.

api-version
query True

string

minLength: 1

Wersja interfejsu API do użycia dla tej operacji.

Treść żądania

Nazwa Wymagane Typ Opis
properties.amount True

number (decimal)

Łączna kwota kosztów do śledzenia przy użyciu budżetu

properties.category True

CategoryType

Kategoria budżetu, niezależnie od tego, czy budżet śledzi koszt, czy użycie.

properties.timeGrain True

TimeGrainType

Czas objęty budżetem. Śledzenie ilości zostanie zresetowane na podstawie ziarna czasu. RozliczeniaMonth, BillingQuarter i BillingAnnual są obsługiwane tylko przez klientów usługi WD

properties.timePeriod True

BudgetTimePeriod

Ma datę rozpoczęcia i zakończenia budżetu. Data rozpoczęcia musi być pierwsza z miesiąca i powinna być mniejsza niż data zakończenia. Data rozpoczęcia budżetu musi być 1 czerwca 2017 r. lub późniejsza. Data rozpoczęcia w przyszłości nie powinna być większa niż dwanaście miesięcy. W przedziale czasu należy wybrać poprzednią datę rozpoczęcia. Nie ma żadnych ograniczeń dotyczących daty zakończenia.

eTag

string

Element eTag zasobu. Aby obsłużyć scenariusz aktualizacji współbieżnych, to pole będzie używane do określenia, czy użytkownik aktualizuje najnowszą wersję, czy nie.

properties.filter

BudgetFilter

Może służyć do filtrowania budżetów według wymiarów określonych przez użytkownika i/lub tagów.

properties.notifications

<string,  Notification>

Słownik powiadomień skojarzonych z budżetem. Budżet może mieć maksymalnie pięć powiadomień.

Odpowiedzi

Nazwa Typ Opis
200 OK

Budget

Operacja aktualizacji zasobu "Budżet" powiodła się

201 Created

Budget

Operacja tworzenia zasobu "Budżet" powiodła się

Other Status Codes

ErrorResponse

Nieoczekiwana odpowiedź na błąd.

Zabezpieczenia

azure_auth

Przepływ protokołu OAuth2 usługi Azure Active Directory.

Typ: oauth2
Flow: implicit
Adres URL autoryzacji: https://login.microsoftonline.com/common/oauth2/authorize

Zakresy

Nazwa Opis
user_impersonation personifikacja konta użytkownika

Przykłady

CreateOrUpdateBudget

Przykładowe żądanie

PUT https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Consumption/budgets/TestBudget?api-version=2024-08-01

{
  "eTag": "\"1d34d016a593709\"",
  "properties": {
    "amount": 100.65,
    "category": "Cost",
    "filter": {
      "and": [
        {
          "dimensions": {
            "name": "ResourceId",
            "operator": "In",
            "values": [
              "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Compute/virtualMachines/MSVM2",
              "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Compute/virtualMachines/platformcloudplatformGeneric1"
            ]
          }
        },
        {
          "tags": {
            "name": "category",
            "operator": "In",
            "values": [
              "Dev",
              "Prod"
            ]
          }
        },
        {
          "tags": {
            "name": "department",
            "operator": "In",
            "values": [
              "engineering",
              "sales"
            ]
          }
        }
      ]
    },
    "notifications": {
      "Actual_GreaterThan_80_Percent": {
        "contactEmails": [
          "johndoe@contoso.com",
          "janesmith@contoso.com"
        ],
        "contactGroups": [
          "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/microsoft.insights/actionGroups/SampleActionGroup"
        ],
        "contactRoles": [
          "Contributor",
          "Reader"
        ],
        "enabled": true,
        "locale": "en-us",
        "operator": "GreaterThan",
        "threshold": 80,
        "thresholdType": "Actual"
      }
    },
    "timeGrain": "Monthly",
    "timePeriod": {
      "endDate": "2018-10-31T00:00:00Z",
      "startDate": "2017-10-01T00:00:00Z"
    }
  }
}

Przykładowa odpowiedź

{
  "name": "TestBudget",
  "type": "Microsoft.Consumption/budgets",
  "eTag": "\"1d34d012214157f\"",
  "id": "subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Consumption/budgets/TestBudget",
  "properties": {
    "amount": 100.65,
    "category": "Cost",
    "currentSpend": {
      "amount": 80.89,
      "unit": "USD"
    },
    "filter": {
      "and": [
        {
          "dimensions": {
            "name": "ResourceId",
            "operator": "In",
            "values": [
              "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Compute/virtualMachines/MSVM2",
              "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Compute/virtualMachines/platformcloudplatformGeneric1"
            ]
          }
        },
        {
          "tags": {
            "name": "category",
            "operator": "In",
            "values": [
              "Dev",
              "Prod"
            ]
          }
        },
        {
          "tags": {
            "name": "department",
            "operator": "In",
            "values": [
              "engineering",
              "sales"
            ]
          }
        }
      ]
    },
    "notifications": {
      "Actual_GreaterThan_80_Percent": {
        "contactEmails": [
          "johndoe@contoso.com",
          "janesmith@contoso.com"
        ],
        "contactGroups": [
          "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/microsoft.insights/actionGroups/SampleActionGroup"
        ],
        "contactRoles": [
          "Contributor",
          "Reader"
        ],
        "enabled": true,
        "locale": "en-us",
        "operator": "GreaterThan",
        "threshold": 80,
        "thresholdType": "Actual"
      }
    },
    "timeGrain": "Monthly",
    "timePeriod": {
      "endDate": "2018-10-31T00:00:00Z",
      "startDate": "2017-10-01T00:00:00Z"
    }
  }
}
{
  "name": "TestBudget",
  "type": "Microsoft.Consumption/budgets",
  "eTag": "\"1d34d012214157f\"",
  "id": "subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Consumption/budgets/TestBudget",
  "properties": {
    "amount": 100.65,
    "category": "Cost",
    "currentSpend": {
      "amount": 80.89,
      "unit": "USD"
    },
    "filter": {
      "and": [
        {
          "dimensions": {
            "name": "ResourceId",
            "operator": "In",
            "values": [
              "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Compute/virtualMachines/MSVM2",
              "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/Microsoft.Compute/virtualMachines/platformcloudplatformGeneric1"
            ]
          }
        },
        {
          "tags": {
            "name": "category",
            "operator": "In",
            "values": [
              "Dev",
              "Prod"
            ]
          }
        },
        {
          "tags": {
            "name": "department",
            "operator": "In",
            "values": [
              "engineering",
              "sales"
            ]
          }
        }
      ]
    },
    "notifications": {
      "Actual_GreaterThan_80_Percent": {
        "contactEmails": [
          "johndoe@contoso.com",
          "janesmith@contoso.com"
        ],
        "contactGroups": [
          "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MYDEVTESTRG/providers/microsoft.insights/actionGroups/SampleActionGroup"
        ],
        "contactRoles": [
          "Contributor",
          "Reader"
        ],
        "enabled": true,
        "locale": "en-us",
        "operator": "GreaterThan",
        "threshold": 80,
        "thresholdType": "Actual"
      }
    },
    "timeGrain": "Monthly",
    "timePeriod": {
      "endDate": "2018-10-31T00:00:00Z",
      "startDate": "2017-10-01T00:00:00Z"
    }
  }
}

Definicje

Nazwa Opis
Budget

Zasób budżetowy.

BudgetComparisonExpression

Wyrażenie porównania, które ma być używane w budżetach.

BudgetFilter

Może służyć do filtrowania budżetów według grupy zasobów, zasobu lub miernika.

BudgetFilterProperties

Wymiary lub tagi do filtrowania budżetu według.

BudgetOperatorType

Operator, który ma być używany do porównania.

BudgetTimePeriod

Data rozpoczęcia i zakończenia budżetu.

CategoryType

Kategoria budżetu, niezależnie od tego, czy budżet śledzi koszt, czy użycie.

createdByType

Typ tożsamości, która utworzyła zasób.

CultureCode

Język, w którym odbiorca otrzyma powiadomienie

CurrentSpend

Bieżąca kwota kosztów śledzonych dla budżetu.

ErrorAdditionalInfo

Dodatkowe informacje o błędzie zarządzania zasobami.

ErrorDetail

Szczegóły błędu.

ErrorResponse

Odpowiedź na błąd

ForecastSpend

Prognozowany koszt, który jest śledzony dla budżetu.

Notification

Powiadomienie skojarzone z budżetem.

OperatorType

Operator porównania.

systemData

Metadane dotyczące tworzenia i ostatniej modyfikacji zasobu.

ThresholdType

Typ progu

TimeGrainType

Czas objęty budżetem. Śledzenie ilości zostanie zresetowane na podstawie ziarna czasu. RozliczeniaMonth, BillingQuarter i BillingAnnual są obsługiwane tylko przez klientów usługi WD

Budget

Zasób budżetowy.

Nazwa Typ Opis
eTag

string

Element eTag zasobu. Aby obsłużyć scenariusz aktualizacji współbieżnych, to pole będzie używane do określenia, czy użytkownik aktualizuje najnowszą wersję, czy nie.

id

string

W pełni kwalifikowany identyfikator zasobu dla zasobu. Przykład - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}

name

string

Nazwa zasobu

properties.amount

number (decimal)

Łączna kwota kosztów do śledzenia przy użyciu budżetu

properties.category

CategoryType

Kategoria budżetu, niezależnie od tego, czy budżet śledzi koszt, czy użycie.

properties.currentSpend

CurrentSpend

Bieżąca kwota kosztów śledzonych dla budżetu.

properties.filter

BudgetFilter

Może służyć do filtrowania budżetów według wymiarów określonych przez użytkownika i/lub tagów.

properties.forecastSpend

ForecastSpend

Prognozowany koszt, który jest śledzony dla budżetu.

properties.notifications

<string,  Notification>

Słownik powiadomień skojarzonych z budżetem. Budżet może mieć maksymalnie pięć powiadomień.

properties.timeGrain

TimeGrainType

Czas objęty budżetem. Śledzenie ilości zostanie zresetowane na podstawie ziarna czasu. RozliczeniaMonth, BillingQuarter i BillingAnnual są obsługiwane tylko przez klientów usługi WD

properties.timePeriod

BudgetTimePeriod

Ma datę rozpoczęcia i zakończenia budżetu. Data rozpoczęcia musi być pierwsza z miesiąca i powinna być mniejsza niż data zakończenia. Data rozpoczęcia budżetu musi być 1 czerwca 2017 r. lub późniejsza. Data rozpoczęcia w przyszłości nie powinna być większa niż dwanaście miesięcy. W przedziale czasu należy wybrać poprzednią datę rozpoczęcia. Nie ma żadnych ograniczeń dotyczących daty zakończenia.

systemData

systemData

Metadane usługi Azure Resource Manager zawierające informacje „createdBy” i „modifiedBy”.

type

string

Typ zasobu. Np. "Microsoft.Compute/virtualMachines" lub "Microsoft.Storage/storageAccounts"

BudgetComparisonExpression

Wyrażenie porównania, które ma być używane w budżetach.

Nazwa Typ Opis
name

string

Nazwa kolumny do użycia w porównaniu.

operator

BudgetOperatorType

Operator, który ma być używany do porównania.

values

string[]

Tablica wartości do użycia do porównania

BudgetFilter

Może służyć do filtrowania budżetów według grupy zasobów, zasobu lub miernika.

Nazwa Typ Opis
and

BudgetFilterProperties[]

Logiczne wyrażenie "AND". Musi zawierać co najmniej 2 elementy.

dimensions

BudgetComparisonExpression

Zawiera wyrażenie porównania dla wymiaru

tags

BudgetComparisonExpression

Zawiera wyrażenie porównania dla tagu

BudgetFilterProperties

Wymiary lub tagi do filtrowania budżetu według.

Nazwa Typ Opis
dimensions

BudgetComparisonExpression

Zawiera wyrażenie porównania dla wymiaru

tags

BudgetComparisonExpression

Zawiera wyrażenie porównania dla tagu

BudgetOperatorType

Operator, który ma być używany do porównania.

Wartość Opis
In

BudgetTimePeriod

Data rozpoczęcia i zakończenia budżetu.

Nazwa Typ Opis
endDate

string (date-time)

Data zakończenia budżetu. Jeśli nie zostanie podana, wartość domyślna to 10 lat od daty rozpoczęcia.

startDate

string (date-time)

Data rozpoczęcia budżetu.

CategoryType

Kategoria budżetu, niezależnie od tego, czy budżet śledzi koszt, czy użycie.

Wartość Opis
Cost

createdByType

Typ tożsamości, która utworzyła zasób.

Wartość Opis
User
Application
ManagedIdentity
Key

CultureCode

Język, w którym odbiorca otrzyma powiadomienie

Wartość Opis
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
da-dk
en-gb
hu-hu
nb-no
nl-nl
pt-pt
sv-se

CurrentSpend

Bieżąca kwota kosztów śledzonych dla budżetu.

Nazwa Typ Opis
amount

number (decimal)

Łączna kwota kosztów śledzonych przez budżet.

unit

string

Jednostka miary dla kwoty budżetu.

ErrorAdditionalInfo

Dodatkowe informacje o błędzie zarządzania zasobami.

Nazwa Typ Opis
info

object

Dodatkowe informacje.

type

string

Dodatkowy typ informacji.

ErrorDetail

Szczegóły błędu.

Nazwa Typ Opis
additionalInfo

ErrorAdditionalInfo[]

Dodatkowe informacje o błędzie.

code

string

Kod błędu.

details

ErrorDetail[]

Szczegóły błędu.

message

string

Komunikat o błędzie.

target

string

Element docelowy błędu.

ErrorResponse

Odpowiedź na błąd

Nazwa Typ Opis
error

ErrorDetail

Obiekt błędu.

ForecastSpend

Prognozowany koszt, który jest śledzony dla budżetu.

Nazwa Typ Opis
amount

number (decimal)

Prognozowany koszt łącznego okresu, który jest śledzony przez budżet. Ta wartość jest podawana tylko wtedy, gdy budżet zawiera typ alertu prognozy.

unit

string

Jednostka miary dla kwoty budżetu.

Notification

Powiadomienie skojarzone z budżetem.

Nazwa Typ Domyślna wartość Opis
contactEmails

string[]

Adresy e-mail do wysyłania powiadomienia o budżecie do momentu przekroczenia progu. Musi mieć co najmniej jedną kontaktowy adres e-mail lub grupę kontaktów określoną w zakresach Subskrypcja lub Grupa zasobów. Wszystkie inne zakresy muszą mieć określony co najmniej jeden kontaktowy adres e-mail.

contactGroups

string[]

Grupy akcji wysyłające powiadomienie o budżecie do momentu przekroczenia progu. Należy podać jako w pełni kwalifikowany identyfikator zasobu platformy Azure. Obsługiwane tylko w zakresach subskrypcji lub grupy zasobów.

contactRoles

string[]

Role kontaktu w celu wysłania powiadomienia o budżecie do momentu przekroczenia progu.

enabled

boolean

Powiadomienie jest włączone lub nie.

locale

CultureCode

Język, w którym odbiorca otrzyma powiadomienie

operator

OperatorType

Operator porównania.

threshold

number (decimal)

Wartość progowa skojarzona z powiadomieniem. Powiadomienie jest wysyłane, gdy koszt przekroczył próg. Zawsze jest to procent i musi należeć do przedziału od 0 do 1000.

thresholdType

ThresholdType

Actual

Typ progu

OperatorType

Operator porównania.

Wartość Opis
EqualTo

Alert zostanie wyzwolony, jeśli szacowany koszt jest taki sam jak wartość progowa. Uwaga: nie zaleca się używania tego typu operatora, ponieważ istnieje niskie prawdopodobieństwo, że koszt jest dokładnie taki sam jak wartość progowa, co prowadzi do braku alertu. Ten typ operatora będzie w przyszłości przestarzały.

GreaterThan

Alert zostanie wyzwolony, jeśli szacowany koszt jest większy niż wartość progowa. Uwaga: jest to zalecany parametr OperatorType podczas konfigurowania alertu budżetu.

GreaterThanOrEqualTo

Alert zostanie wyzwolony, jeśli szacowany koszt jest większy lub równy wartości progowej.

systemData

Metadane dotyczące tworzenia i ostatniej modyfikacji zasobu.

Nazwa Typ Opis
createdAt

string (date-time)

Sygnatura czasowa tworzenia zasobu (UTC).

createdBy

string

Tożsamość, która utworzyła zasób.

createdByType

createdByType

Typ tożsamości, która utworzyła zasób.

lastModifiedAt

string (date-time)

Sygnatura czasowa ostatniej modyfikacji zasobu (UTC)

lastModifiedBy

string

Tożsamość, która jako ostatnia zmodyfikowała zasób.

lastModifiedByType

createdByType

Typ tożsamości, która jako ostatnia zmodyfikowała zasób.

ThresholdType

Typ progu

Wartość Opis
Actual

Alerty budżetu kosztów rzeczywistych powiadamiają o przekroczeniu przydzielonego budżetu rzeczywistego naliczonego kosztu.

Forecasted

Alerty budżetu prognozowanych kosztów zapewniają zaawansowane powiadomienie, że trendy wydatków mogą przekroczyć przydzielony budżet, ponieważ opiera się na prognozowanych przewidywaniach kosztów.

TimeGrainType

Czas objęty budżetem. Śledzenie ilości zostanie zresetowane na podstawie ziarna czasu. RozliczeniaMonth, BillingQuarter i BillingAnnual są obsługiwane tylko przez klientów usługi WD

Wartość Opis
Monthly
Quarterly
Annually
BillingMonth
BillingQuarter
BillingAnnual