Kosten beheren met automatisering

U kunt Cost Management-automatisering gebruiken om een aangepaste set oplossingen te maken waarmee kostengegevens kunnen worden opgehaald en beheerd. In dit artikel worden algemene scenario's voor Cost Management-automatisering en beschikbare opties op basis van uw situatie behandeld. Als u wilt ontwikkelen met behulp van API's, worden voorbeelden van veelvoorkomende API-aanvragen weergegeven om uw ontwikkelproces te versnellen.

Ophalen van kostengegevens automatiseren voor offline analyse

Mogelijk moet u uw Azure-kostengegevens downloaden om deze samen te voegen met andere gegevenssets. Of u moet kostengegevens integreren in uw eigen systemen. Er zijn verschillende opties beschikbaar, afhankelijk van de hoeveelheid betrokken gegevens. U moet beschikken over Cost Management-machtigingen op het juiste bereik om API's en hulpprogramma's te kunnen gebruiken. Zie Toegang tot gegevens toewijzen voor meer informatie.

Suggesties voor het verwerken van grote gegevenssets

Als uw organisatie een grote aanwezigheid van Azure heeft voor veel resources of abonnementen, hebt u een grote hoeveelheid gegevens over gebruiksgegevens. Excel kan vaak niet zulke grote bestanden laden. In deze situatie worden de volgende opties aanbevolen:

Power BI

Power BI wordt gebruikt om grote hoeveelheden gegevens op te nemen en af te handelen. Als u een Enterprise Agreement-klant bent, kunt u de Power BI-sjabloon-app gebruiken om de kosten voor uw factureringsaccount te analyseren. Het rapport bevat belangrijke weergaven die door klanten worden gebruikt. Zie Azure-kosten analyseren met de app Power BI-sjabloon-app voor meer informatie.

Power BI-gegevensconnector

Als u uw gegevens dagelijks wilt analyseren, kunt u het beste de Power BI-gegevensconnector gebruiken om gegevens op te halen voor gedetailleerde analyse. Alle rapporten die u maakt, worden bijgewerkt door de connector naarmate er meer kosten worden gegenereerd.

Cost Management-exports

Mogelijk hoeft u de gegevens niet dagelijks te analyseren. Als dit wel het geval is, kunt u de functie Exports van Cost Management gebruiken om gegevensexports naar een Azure Storage-account te plannen. Vervolgens kunt u de gegevens naar Power BI laden of in Excel analyseren als het bestand klein genoeg is. Exports zijn beschikbaar in Azure Portal of u kunt exports configureren met de Exports-API.

API voor gedetailleerde gebruiksgegevens

U kunt de API voor gedetailleerde gebruiksgegevens gebruiken als u een kleine kostengegevensset hebt. Hier volgen aanbevolen aanbevolen procedures:

  • Als u de meest recente kostengegevens wilt ophalen, raden we u aan om maximaal één keer per dag een query uit te voeren. Rapporten worden elke vier uur vernieuwd. Als u vaker belt, ontvangt u identieke gegevens.
  • Zodra u uw kostengegevens voor historische facturen hebt gedownload, worden de kosten niet gewijzigd, tenzij u expliciet op de hoogte wordt gesteld. We raden u aan uw kostengegevens in een querybare opslag op te slaan om herhaalde aanroepen voor identieke gegevens te voorkomen.
  • Deel uw aanroepen in kleine datumbereiken om meer beheerbare bestanden te krijgen die u kunt downloaden. We raden u bijvoorbeeld aan te segmenteren op dag of per week als u grote Azure-gebruiksbestanden maandelijks hebt.
  • Als u bereiken hebt met een grote hoeveelheid gebruiksgegevens (bijvoorbeeld een factureringsaccount), kunt u overwegen om meerdere aanroepen naar onderliggende bereiken te plaatsen, zodat u meer beheerbare bestanden krijgt die u kunt downloaden.
  • Als uw gegevensset meer dan 2 GB per maand is, kunt u overwegen om exports te gebruiken als een schaalbare oplossing.

Automatisch ophalen met API voor gedetailleerde gebruiksgegevens

Met de API voor gedetailleerde gebruiksgegevens kunt u eenvoudig ruwe, niet-samengevoegde kostengegevens ophalen die overeenkomen met uw Azure-factuur. De API is handig wanneer uw organisatie een programmatische oplossing voor het ophalen van gegevens nodig heeft. U kunt de API gebruiken als u kleinere gegevenssets wilt analyseren. Voor grotere gegevenssets moet u echter andere oplossingen gebruiken die eerder zijn geïdentificeerd. De gegevens in Gebruiksgegevens worden per meter per dag verstrekt. Dit wordt gebruikt bij het berekenen van uw maandelijkse factuur. De GA-versie (algemene beschikbaarheid) van de API's is 2019-10-01. Gebruik 2019-04-01-preview voor toegang tot de preview-versie voor reservering en Azure Marketplace-aankopen met de API's.

Als u regelmatig grote hoeveelheden geëxporteerde gegevens wilt ophalen, raadpleegt u Gegevenssets met grote kosten die regelmatig worden opgehaald met exports.

Suggesties van de API voor gedetailleerde gebruiksgegevens

Aanvraagschema

U wordt aangeraden niet meer dan één aanvraag te maken met de API voor gedetailleerde gebruiksgegevens. Zie Inzicht in gegevens van Cost Management voor meer informatie over hoe vaak kostengegevens worden vernieuwd en hoe afronding wordt verwerkt.

Bereiken op het hoogste niveau bepalen zonder te filteren

Gebruik de API om alle gegevens op te halen die u nodig hebt voor het bereik op het hoogste niveau. Wacht totdat alle benodigde gegevens zijn opgenomen voordat u een filter, groepering of samengevoegde analyse uitvoert. De API is specifiek geoptimaliseerd om grote hoeveelheden niet-samengevoegde ruwe kostengegevens te leveren. Zie Bereiken begrijpen en gebruiken in Cost Management voor meer informatie over het werken met bereiken. Wanneer u de benodigde gegevens voor een bereik hebt gedownload, gebruikt u Excel om de gegevens verder te analyseren met filters en draaitabellen.

Opmerkingen over prijzen

Als u het gebruik en de kosten wilt afstemmen met uw prijzenoverzicht of factuur, raadpleegt u Het gedrag van prijzen in de kostendetails.

Eén resource kan meerdere records voor één dag hebben

Azure-resourceproviders verzenden gebruik en kosten naar het factureringssysteem en vullen het Additional Info veld van de gebruiksrecords in. Soms kunnen resourceproviders het gebruik voor een bepaalde dag verzenden en de records voorzien van verschillende datacenters in het Additional Info veld van de gebruiksrecords. Dit kan ertoe leiden dat meerdere records voor een meter/resource gedurende één dag aanwezig zijn in uw gebruiksbestand. In die situatie ben je niet overbelast. De meerdere records vertegenwoordigen de volledige kosten van de meter voor de resource op die dag.

Voorbeeld van API voor gedetailleerde gebruiksgegevens

De volgende voorbeeldaanvragen worden door Microsoft-klanten gebruikt voor het oplossen van veelvoorkomende scenario's.

Gebruiksgegevens voor een bereik tijdens een bepaald datumbereik ophalen

De gegevens die door de aanvraag worden geretourneerd, komen overeen met de datum waarop het gebruik is ontvangen door het factureringssysteem. Dit kan kosten van meerdere facturen bevatten. De aanroep die moet worden gebruikt, hang af van het type abonnement.

Gebruik de volgende aanroep voor verouderde klanten met een Enterprise Agreement (EA) of een betalen per gebruik-abonnement:

GET https://management.azure.com/{scope}/providers/Microsoft.Consumption/usageDetails?$filter=properties%2FusageStart%20ge%20'2020-02-01'%20and%20properties%2FusageEnd%20le%20'2020-02-29'&$top=1000&api-version=2019-10-01

Voor moderne klanten met een Microsoft-klantovereenkomst gebruikt u de volgende aanroep:

GET https://management.azure.com/{scope}/providers/Microsoft.Consumption/usageDetails?startDate=2020-08-01&endDate=2020-08-05&$top=1000&api-version=2019-10-01

Notitie

De $filter parameter wordt niet ondersteund door Microsoft-klantovereenkomst s.

Gegevens van afgeschreven kosten ophalen

Als u de werkelijke kosten wilt zien omdat u de aankopen wilt zien op het moment dat ze worden samengevoegd, wijzigt u de metrische waarde in ActualCost in de volgende aanvraag. Als u afgeschreven en werkelijke kosten wilt gebruiken, moet u de 2019-04-01-preview-versie gebruiken. De huidige API-versie werkt op dezelfde wijze als de 2019-10-01-versie, met uitzondering van het nieuwe type/metrisch-kenmerk en de gewijzigde eigenschapsnamen. Als u een Microsoft-klantovereenkomst hebt, zijn uw filters startDate en endDate in het volgende voorbeeld.

GET https://management.azure.com/{scope}/providers/Microsoft.Consumption/usageDetails?metric=AmortizedCost&$filter=properties/usageStart+ge+'2019-04-01'+AND+properties/usageEnd+le+'2019-04-30'&api-version=2019-04-01-preview

Waarschuwingen en acties automatiseren met budgetten

Er zijn twee essentiële onderdelen om de waarde van uw investering in de cloud te maximaliseren. Eén daarvan is het automatisch maken van een budget. Het andere is het configureren van op kosten gebaseerde indeling in reactie op budgetwaarschuwingen. Er zijn verschillende manieren om het maken van budget te automatiseren. Er vinden verscheidene waarschuwingsreacties plaats wanneer uw geconfigureerde waarschuwingsdrempels worden overschreden.

In de volgende secties worden beschikbare opties behandeld en voorbeelden van API-aanvragen gegeven om u aan de slag te laten gaan met budgetautomatisering.

Hoe kosten worden geëvalueerd ten opzichte van uw budgetdrempel

Uw kosten worden eenmaal per dag geëvalueerd ten opzichte van uw budgetdrempel. Wanneer u een nieuw budget maakt of op de dag dat uw budget opnieuw wordt ingesteld, zullen de kosten vergeleken met de drempel nul zijn, omdat de evaluatie mogelijk nog niet heeft plaatsgevonden.

Wanneer Azure detecteert dat uw kosten de drempel hebben overschreden, wordt er binnen een uur na de detectieperiode een melding geactiveerd.

Uw huidige kosten bekijken

Als u uw huidige kosten wilt bekijken, moet u een GET-aanroep doen met behulp van de Query-API.

Een GET-aanroep bij de API voor budgetten zal niet de huidige kosten retourneren die in Kostenanalyse worden weergegeven. Deze aanroep retourneert in plaats daarvan uw laatste geëvalueerde kosten.

Het maken van een budget automatiseren

U kunt het maken van een budget automatiseren met behulp van de API voor budgetten. U kunt ook een budget maken met een budgetsjabloon. Sjablonen zijn een gemakkelijke manier voor u om Azure-implementaties te standaardiseren terwijl u verzekert dat kostenbeheer goed wordt geconfigureerd en afgedwongen.

Ondersteunde talen voor e-mails voor budgetwaarschuwingen

Met budgetten wordt u gewaarschuwd als u een bepaalde drempelwaarde overschrijdt. U kunt maximaal vijf e-mailontvangers per budget instellen. Ontvangers ontvangen de e-mailwaarschuwingen binnen 24 uur nadat de budgetdrempelwaarde is overschreden. Het kan echter zijn dat uw ontvanger een e-mail in een andere taal moet ontvangen. U kunt de volgende taalcultuurcodes gebruiken met de Budget-API. Stel de cultuurcode in met de parameter locale, zoals in het volgende voorbeeld.

{
  "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"
      }
    }
  }
}

Talen die worden ondersteund door een cultuurcode:

Cultuurcode Taal
nl Engels (Verenigde Staten)
ja-jp Japans (Japan)
zh-cn Chinees (vereenvoudigd, China)
de-de Duits (Duitsland)
es-es Spaans (Spanje, internationaal)
fr-fr Frans (Frankrijk)
it-it Italiaans (Italië)
ko-kr Koreaans (Korea)
pt-br Portugees (Brazilië)
ru-ru Russisch (Rusland)
zh-tw Chinese (traditioneel, Taiwan)
cs-cz Tsjechisch (Tsjechische Republiek)
pl-pl Pools (Polen)
tr-tr Turks (Turkije)
da-dk Deens (Denemarken)
en-gb Engels (Verenigd Koninkrijk)
hu-hu Hongaars (Hongarije)
nb-no Noors (Bokmål) (Noorwegen)
nl-nl Nederlands (Nederland)
pt-pt Portugees (Portugal)
sv-se Zweeds (Zweden)

Algemene configuraties van de API voor budgetten

Er zijn vele manieren om een budget te configureren in uw Azure-omgeving. Overweeg eerst uw scenario en identificeer vervolgens de configuratieopties die het mogelijk maken. Controleer de volgende opties:

  • Tijdseenheid: Vertegenwoordigt de terugkeerperiode die uw budget gebruikt om kosten te maken en evalueren. De meest algemene opties zijn Maandelijks, Driemaandelijks en Jaarlijks.
  • Tijdsperiode: Vertegenwoordigt hoelang uw budget geldig is. Het budget bewaakt actief en waarschuwt u alleen terwijl het geldig is.
  • Meldingen
    • Contact-e-mails: De e-mailadressen ontvangen waarschuwingen wanneer een budget kosten maakt en gedefinieerde drempels overschrijdt.
    • Contactrollen: Alle gebruikers die een overeenkomende Azure-rol in het opgegeven bereik hebben, ontvangen e-mailwaarschuwingen met deze optie. Abonnementseigenaren kunnen bijvoorbeeld een waarschuwing ontvangen voor een budget dat in het abonnementsbereik is gemaakt.
    • Contactgroepen: Het budget roept de geconfigureerde actiegroepen aan wanneer een waarschuwingsdrempel wordt overschreden.
  • Kostendimensiefilters: Voor uw budget kunt u dezelfde filters gebruiken als die u in Kostenanalyse of de Query-API gebruikt. Gebruik dit filter om het bereik te verkleinen van de kosten die u met het budget bewaakt.

Nadat u de opties voor het maken van een budget hebt geïdentificeerd die aan uw behoeften voldoen, maakt u het budget met behulp van de API. Het onderstaande voorbeeld helpt u aan de slag te gaan met een algemene budgetconfiguratie.

Een budget maken dat is gefilterd op meerdere resources en tags

Aanvraag-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"
      }
    }
  }
}

Op kosten gebaseerde indeling configureren voor budgetwaarschuwingen

U kunt budgetten configureren om geautomatiseerde acties te starten met behulp van Azure-actiegroepen. Zie Automation met budgetten voor meer informatie over het automatiseren van acties met behulp van budgetten.

Gegevenslatentie en frequentielimieten

Het is raadzaam de API's niet vaker dan één keer per dag aan te roepen. Cost Management-gegevens worden elke vier uur vernieuwd, wanneer nieuwe gebruiksgegevens van Azure-resourceproviders worden ontvangen. Er komen niet meer gegevens vrij als de API vaker wordt aangeroepen. In plaats daarvan wordt de belasting groter.

Query-API-queryverwerkingseenheden

Naast de bestaande processen voor snelheidsbeperking beperkt de Query-API ook de verwerking op basis van de kosten van API-aanroepen. De kosten van een API-aanroep worden uitgedrukt als QPU's (queryverwerkingseenheden). QPU is een prestatievaluta, zoals Cosmos DB-RU's. Ze abstraheren systeembronnen zoals CPU en geheugen.

QPU-berekening

Op dit moment wordt één QPU in mindering gebracht voor één maand aan gegevens die zijn opgevraagd uit de toegewezen quota. Deze logica kan zonder kennisgeving worden gewijzigd.

QPU-factoren

De volgende factor is van invloed op het aantal QPU's dat wordt gebruikt door een API-aanvraag.

  • Datumbereik, naarmate het datumbereik in de aanvraag toeneemt, neemt het aantal verbruikte QPU's toe.

Andere QPU-factoren kunnen zonder kennisgeving worden toegevoegd.

QPU-quota

De volgende quota worden per tenant geconfigureerd. Aanvragen worden beperkt wanneer een van de volgende quota is uitgeput.

  • 12 QPU per 10 seconden
  • 60 QPU per 1 min.
  • 600 QPU per 1 uur

De quota kunnen indien nodig worden gewijzigd en er kunnen meer quota worden toegevoegd.

Responsheaders

U kunt de antwoordheaders onderzoeken om het aantal QPU's bij te houden dat wordt gebruikt door een API-aanvraag en het aantal resterende QPU's.

x-ms-ratelimit-microsoft.costmanagement-qpu-retry-after

Geeft de tijd aan die in seconden moet worden teruggezet. Wanneer een aanvraag wordt beperkt met 429, moet u de tijd die in deze header is opgegeven, weer uitschakelen voordat u de aanvraag opnieuw probeert uit te voeren.

x-ms-ratelimit-microsoft.costmanagement-qpu-consumed

QPU's die worden gebruikt door een API-aanroep.

x-ms-ratelimit-microsoft.costmanagement-qpu-remaining

Lijst met resterende quota.

Volgende stappen