Gestire i costi con l'automazione

È possibile usare l'automazione di Gestione costi per creare un set personalizzato di soluzioni con cui recuperare e gestire i dati sui costi. Questo articolo riguarda gli scenari comuni di automazione di Gestione costi e le opzioni disponibili in base alla situazione. Per lo sviluppo tramite API, vengono presentati esempi di richieste API comuni per accelerare il processo.

Automatizzare il recupero dei dati sui costi per l'analisi offline

Potrebbe essere necessario scaricare i dati sui costi di Azure per unirli ad altri set di dati. Oppure potrebbe essere necessario integrare i dati sui costi nei propri sistemi. Sono disponibili diverse opzioni in base alla quantità di dati coinvolti. In ogni caso, per usare le API e gli strumenti, è necessario avere le autorizzazioni di Gestione costi nell'ambito appropriato. Per altre informazioni, vedere Assegnare l'accesso ai dati.

Suggerimenti per la gestione di set di dati di grandi dimensioni

Se l'organizzazione usa diffusamente molte risorse o sottoscrizioni di Azure, si avrà una grande quantità di risultati di dati dettagliati di utilizzo. Spesso Excel non è in grado di caricare tali file di grandi dimensioni. In questa situazione è consigliabile scegliere le opzioni seguenti:

Power BI

Power BI consente di inserire e gestire grandi quantità di dati. I clienti con contratto Enterprise possono usare l'app modello di Power BI per analizzare i costi per l'account di fatturazione. Il report contiene le principali visualizzazioni usate dai clienti. Per altre informazioni, vedere Analizzare i costi di Azure con l'app modello di Power BI.

Connettore dati di Power BI

Per analizzare i dati quotidianamente, è consigliabile usare il connettore dati di Power BI per eseguire un'analisi dettagliata. Tutti i report creati vengono mantenuti aggiornati dal connettore mentre vengono accumulati altri costi.

Esportazioni di Gestione costi

A volte non è necessario analizzare i dati quotidianamente. In questo caso, è consigliabile usare la funzionalità Esportazioni per pianificare le esportazioni di dati in un account di archiviazione di Azure. È quindi possibile caricare i dati in Power BI, se necessario, o analizzarli in Excel se le dimensioni del file sono sufficientemente ridotte. Le esportazioni sono disponibili nel portale di Azure oppure è possibile configurarle con l'API Esportazioni.

API Dettagli utilizzo

Se il set di dati sui costi è di piccole dimensioni, provare a usare l'API Dettagli utilizzo. Le procedure consigliate sono le seguenti:

  • Per ottenere i dati sui costi più recenti, si consiglia di eseguire una query al massimo una volta al giorno. I report vengono aggiornati ogni quattro ore. Se si effettuano chiamate più di frequente, si riceveranno dati identici.
  • Dopo aver scaricato i dati sui costi delle fatture nella cronologia, gli addebiti non cambieranno a meno che non si riceva una notifica esplicita. Si consiglia di memorizzare i dati sui costi nella cache di un archivio su cui è possibile eseguire query, per evitare chiamate ripetute per dati identici.
  • Suddividere le chiamate in intervalli di date di piccole dimensioni per ottenere file più gestibili e facili da scaricare. Ad esempio, si consiglia di creare una suddivisione in blocchi per giorno o per settimana, se si hanno file di grandi dimensioni di utilizzo mensile di Azure.
  • Se si dispone di ambiti con una grande quantità di dati di utilizzo (ad esempio un account di fatturazione), è possibile l'inserimento di più chiamate negli ambiti figlio in modo da avere file più gestibili e facili da scaricare.
  • Se il set di dati è superiore a 2 GB al mese, si consiglia di usare le esportazioni come soluzione più scalabile.

Automatizzare il recupero con l'API Dettagli utilizzo

L'API Dettagli utilizzo offre un modo semplice per ottenere dati sui costi non elaborati e non aggregati corrispondenti alla fattura di Azure. L'API è utile quando l'organizzazione necessita di una soluzione di recupero dei dati a livello di codice. È consigliabile usare l'API per l'analisi di set di dati sui costi di dimensioni ridotte. Nel caso di set di dati più grandi, è invece consigliabile usare le altre soluzioni identificate in precedenza. I dati in Dettagli utilizzo vengono forniti per ogni contatore al giorno. Vengono usati per il calcolo della fattura mensile. La versione disponibile a livello generale di queste API è 2019-10-01. Usare 2019-04-01-preview per accedere alla versione di anteprima per la prenotazione e gli acquisti in Azure Marketplace con le API.

Per ottenere regolarmente grandi quantità di dati esportati, leggere Recuperare set di dati di costi di grandi dimensioni in modo ricorrente con le esportazioni.

Suggerimenti per l'API Dettagli utilizzo

Pianificazione delle richieste

È consigliabile effettuare non più di una richiesta al giorno all'API Dettagli utilizzo. Per altre informazioni sulla frequenza di aggiornamento dei dati sui costi e su come viene gestito l'arrotondamento, vedere Informazioni sui dati di Gestione costi.

Scegliere ambiti di primo livello senza filtro

Usare l'API per ottenere tutti i dati necessari nell'ambito di livello più alto disponibile. Attendere che vengano inseriti tutti i dati necessari prima di eseguire operazioni di filtro, raggruppamento o analisi aggregate. L'API è ottimizzata specificamente per fornire grandi quantità di dati sui costi non elaborati e non aggregati. Per altre informazioni sugli ambiti disponibili in Gestione costi, vedere Informazioni e utilizzo degli ambiti. Una volta scaricati i dati necessari per un ambito, usare Excel per analizzare ulteriormente i dati con i filtri e le tabelle pivot.

Note sui prezzi

Per risolvere le differenze relative all’utilizzo e agli addebiti con l'elenco prezzi o la fattura, vedere Comportamento dei prezzi nei dettagli dei costi.

Una singola risorsa potrebbe avere più record per un singolo giorno

I provider di risorse di Azure generano dati di utilizzo e gli addebiti per il sistema di fatturazione e popolano il Additional Info campo dei record di utilizzo. In alcuni casi, i provider di risorse potrebbero generare dati di utilizzo per un determinato giorno e contrassegnare i record con data center diversi nel Additional Info campo dei record di utilizzo. Ciò può comportare la presenza di più record per un contatore o una risorsa nel file di utilizzo in un singolo giorno. In questo modo non si subiscono sovraccarichi. I record multipli rappresentano il costo completo del contatore per la risorsa in un determinato giorno.

Esempi di richieste all'API Dettagli utilizzo

Le richieste di esempio seguenti vengono usate dai clienti Microsoft negli scenari comuni che si potrebbero riscontrare.

Ottenere i dettagli di utilizzo per un ambito durante un intervallo di date specifico

I dati di utilizzo restituiti dalla richiesta corrispondono alla data in cui sono stati ricevuti dal sistema di fatturazione. Possono includere i costi di più fatture. La chiamata da usare varia in base al tipo di sottoscrizione.

Per i clienti legacy con un contratto Enterprise (EA) o una sottoscrizione con pagamento in base al consumo, usare la chiamata seguente:

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

Per i clienti moderni con un Contratto del cliente Microsoft, usare la chiamata seguente:

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

Nota

Il $filter parametro non è supportato dai contratti del cliente Microsoft.

Ottenere dettagli sui costi ammortizzati

Se sono necessari i costi effettivi per dimostrare gli acquisti accumulati, impostare metric su ActualCost nella richiesta seguente. Per usare i costi ammortizzati ed effettivi, è necessario usare la versione 2019-04-01-preview. La versione corrente dell'API funziona allo stesso modo della versione 2019-10-01, ad eccezione del nuovo attributo type/metric e dei nomi di proprietà modificati. Se si ha un Contratto del cliente Microsoft, i filtri sono startDate e endDate nell'esempio seguente.

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

Automatizzare gli avvisi e le azioni con i budget

Esistono sono due componenti essenziali per massimizzare il valore del proprio investimento nel cloud. Uno è la creazione automatica del budget. L'altro è la configurazione dell'orchestrazione basata sui costi in risposta agli avvisi del budget. Esistono diversi modi per automatizzare la creazione di budget. Diverse risposte agli avvisi si verificano quando vengono superate le soglie di avviso configurate.

Le sezioni seguenti includono le opzioni disponibili e forniscono richieste API di esempio per iniziare a usare l'automazione del budget.

Come vengono valutati i costi rispetto alla soglia del budget

I costi vengono valutati rispetto alla soglia del budget una volta al giorno. Quando si crea un nuovo budget o il giorno del ripristino del budget, i costi saranno zero/null rispetto alla soglia perché la valutazione potrebbe non essersi verificata.

Quando Azure rileva che i costi hanno superato la soglia, viene attivata una notifica entro l'ora del periodo di rilevamento.

Visualizzare il costo corrente

Per visualizzare i costi correnti, è necessario effettuare una chiamata GET usando l'API di query.

Una chiamata GET all'API dei budget non restituirà i costi correnti indicati nell'analisi dei costi. La chiamata restituisce invece l'ultimo costo valutato.

Automatizzare la creazione del budget

È possibile automatizzare la creazione del budget usando l'API dei budget. È anche possibile creare un budget con un modello di budget. I modelli rappresentano un modo semplice per standardizzare le distribuzioni di Azure garantendo al contempo la corretta configurazione e applicazione del controllo dei costi.

Impostazioni locali supportate per i messaggi di posta elettronica di avviso relativi ai budget

Con i budget si riceve un avviso quando i costi superano una soglia impostata. È possibile impostare un massimo di cinque destinatari di posta elettronica per ogni budget. I destinatari ricevono i messaggi di posta elettronica di avviso entro 24 ore dal superamento della soglia del budget. È però possibile che il destinatario debba ricevere un messaggio di posta elettronica in una lingua diversa. Con l'API dei budget è possibile usare i codici di impostazioni cultura della lingua seguenti. Per definire le impostazioni cultura, usare il parametro locale come descritto nell'esempio seguente.

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

Lingue supportate dalle impostazioni cultura:

Codice impostazioni cultura Lingua
en-us Inglese (Stati Uniti)
ja-jp Giapponese (Giappone)
zh-cn Cinese (semplificato, Cina)
de-de Tedesco (Germania)
es-es Spagnolo (Spagna, internazionale)
fr-fr Francese (Francia)
it-it Italiano (Italia)
ko-kr Coreano (Corea)
pt-br Portoghese (Brasile)
ru-ru Russo (Russia)
zh-tw Cinese (tradizionale, Taiwan)
cs-cz Ceco (Repubblica Ceca)
pl-pl Polacco (Polonia)
tr-tr Turco (Turchia)
da-dk Danese (Danimarca)
en-gb Inglese (Regno Unito)
hu-hu Ungherese (Ungheria)
nb-no Norvegese Bokmål (Norvegia)
nl-nl Olandese (Paesi Bassi)
pt-pt Portoghese (Portogallo)
sv-se Svedese (Svezia)

Configurazioni comuni dell'API dei budget

Esistono diversi modi per configurare un budget nell'ambiente Azure. Considerare prima lo scenario e quindi identificare le opzioni di configurazione che lo abilitano. Esaminare le opzioni seguenti:

  • Intervallo di tempo: rappresenta il periodo ricorrente usato dal budget per accumulare e valutare i costi. Le opzioni più comuni sono Ogni mese, Ogni tre mesi e Ogni anno.
  • Periodo di tempo: indica per quanto tempo il budget è valido. Il budget monitora e avvisa attivamente solo se rimane valido.
  • Notifications
    • Indirizzi di posta elettronica di contatto: gli indirizzi di posta elettronica ricevono gli avvisi quando un budget accumula i costi e supera le soglie definite.
    • Ruoli di contatto: con questa opzione tutti gli utenti con un ruolo di Azure corrispondente nell'ambito specificato ricevono gli avvisi di posta elettronica. Ad esempio, i proprietari della sottoscrizione potrebbero ricevere un avviso per un budget creato nell'ambito della sottoscrizione.
    • Gruppi di contatti: il budget chiama i gruppi di azioni configurati quando viene superata una soglia di avviso.
  • Filtri dimensione costi: gli stessi filtri che è possibile applicare all'analisi dei costi o all'API di query possono essere applicati al budget. Usare questo filtro per ridurre l'intervallo di costi che si sta monitorando con il budget.

Dopo aver identificato le opzioni di creazione del budget che soddisfano le proprie esigenze, creare il budget usando l'API. L'esempio seguente consente di iniziare con una configurazione di budget comune.

Creare un budget filtrato in base a più risorse e tag

URL richiesta: 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"
      }
    }
  }
}

Configurare l'orchestrazione basata sui costi per gli avvisi di budget

È possibile configurare i budget per avviare le azioni automatizzate tramite i gruppi di azioni di Azure. Per altre informazioni su come automatizzare le azioni usando i budget, vedere Automazione con i budget.

Latenza dei dati e limiti di velocità

È consigliabile chiamare le API non più di una volta al giorno. I dati di Gestione costi vengono aggiornati ogni quattro ore man mano che vengono ricevuti dati di utilizzo dai provider di risorse di Azure. Se si effettuano chiamate più frequenti, non si ricevono più dati, ma si crea solo un carico maggiore.

Unità di elaborazione query dell'API di query

Oltre ai processi di limitazione della frequenza esistenti, l' API di query limita anche l'elaborazione in base al costo delle chiamate API. Il costo di una chiamata API viene espresso in unità di elaborazione query (QPU). QPU è una valuta delle prestazioni, come le UR di Cosmos DB. Estraggono risorse di sistema come CPU e memoria.

Calcolo QPU

Attualmente, viene dedotta una QPU per ogni mese di dati sottoposti a query dalle quote assegnate. Questa logica può cambiare senza preavviso.

Fattori QPU

Il fattore seguente influisce sul numero di QPU utilizzate da una richiesta API.

  • Man mano che aumenta l'intervallo di date nella richiesta, aumenta il numero di QPU utilizzate.

Altri fattori QPU possono essere aggiunti senza preavviso.

Quote QPU

Le quote seguenti sono configurate per tenant. Le richieste vengono limitate quando una delle quote seguenti viene esaurita.

  • 12 QPU ogni 10 secondi
  • 60 QPU ogni 60 secondi
  • 600 QPU ogni 1 ora

Le quote possono essere modificate in base alle esigenze e si possono aggiungere altre quote.

Intestazioni della risposta

È possibile esaminare le intestazioni di risposta per tenere traccia del numero di QPU utilizzate da una richiesta API e del numero di QPU rimanenti.

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

Indica il tempo di backoff in secondi. Quando una richiesta viene limitata a 429, eseguire il backoff per il tempo specificato in questa intestazione prima di ritentare la richiesta.

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

QPU utilizzate da una chiamata API.

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

Elenco delle quote rimanenti.

Passaggi successivi