Tutoriel : Amorcer un jeu de données de coûts historiques avec l’API Exports
Les grandes organisations doivent souvent analyser leurs coûts historiques sur un an ou plus. Il peut s’avérer nécessaire de créer un jeu de données pour des demandes ponctuelles ciblées, ou de configurer des tableaux de bord de rapports afin de visualiser des tendances de coûts au fil du temps. Dans les deux cas, vous devez disposer d’un moyen d’obtenir les données de manière fiable afin de pouvoir les charger dans un magasin de données que vous pouvez interroger. Une fois votre jeu de données de coûts historiques amorcé, votre magasin de données peut être actualisé au fur et à mesure de l’arrivée de nouveaux coûts afin que vos rapports soient toujours à jour. Les coûts historiques changent rarement et, le cas échéant, vous en êtes informé. Nous vous recommandons donc d’actualiser vos coûts historiques au plus une fois par mois.
Dans ce tutoriel, vous allez apprendre à :
- Obtenir un jeton du porteur pour votre principal de service
- Mettre en forme la demande
- Exécuter les requêtes en blocs d’un mois
Prérequis
Vous avez besoin d’autorisations appropriées pour appeler correctement l’API Exports. Nous vous recommandons d’utiliser un principal de service dans les scénarios d’automatisation.
- Pour plus d’informations, consultez Attribuer des autorisations aux API Cost Management.
- Pour en savoir plus sur les autorisations spécifiques nécessaires pour l’API Exports, consultez Comprendre et utiliser des étendues.
Par ailleurs, vous avez besoin d’un moyen d’interroger directement l’API. Voici quelques méthodes couramment employées pour interroger l’API :
- Visual Studio
- Insomnia
- Bruno
- Invoke-RestMethod de PowerShell
- Curl
Obtenir un jeton du porteur pour votre principal de service
Pour savoir comment obtenir un jeton du porteur avec un principal de service, consultez Acquérir un jeton d’accès.
Mettre en forme la demande
Consultez l’exemple de demande suivant et créez votre propre exportation de données ponctuelle. L’exemple de demande suivant crée un jeu de données Actual Cost (Coût réel) d’un mois dans le compte de stockage Azure spécifié. Nous vous recommandons de ne pas demander plus d’un mois de données par rapport. Si vous avez un jeu de données volumineux chaque mois, nous vous recommandons de définir partitionData = true
pour votre exportation ponctuelle afin de fractionner celle-ci en plusieurs fichiers. Pour plus d’informations, consultez partitionnement de fichiers pour les jeux de données volumineux.
PUT https://management.azure.com/providers/Microsoft.Billing/billingAccounts/{enrollmentId}/providers/Microsoft.CostManagement/exports/{ExportName}?api-version=2021-10-01
En-têtes de requête
Authorization: <YOUR BEARER TOKEN>
Accept: /*/
Content-Type: application/json
Corps de la requête
{
"properties": {
"definition": {
"dataset": {
"granularity": "Daily",
"grouping": []
},
"timePeriod": {
"from": "2021-09-01T00:00:00.000Z",
"to": "2021-09-30T00:00:00.000Z"
},
"timeframe": "Custom",
"type": "ActualCost"
},
"deliveryInfo": {
"destination": {
"container": "{containerName}",
"rootFolderPath": "{folderName}",
"resourceId": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{storageAccountName}"
}
},
"format": "Csv",
"partitionData": false
}
}
Créer des exportations en blocs d’un mois
Nous vous recommandons de créer des exportations de données ponctuelles dans des blocs d’un mois. Si vous souhaitez amorcer un jeu de données historique d’un an, vous devriez exécuter 12 demandes d’API Exports, soit une pour chaque mois. Après avoir amorcé votre jeu de données historique, vous pouvez créer une exportation planifiée pour continuer à remplir le stockage Azure de vos données à mesure que vos frais s’accumulent.
Exécuter chaque exportation
Maintenant que vous avez créé les exportations pour chaque mois, vous devez exécuter chacune d’elles manuellement en appelant l’API Execute. Voici un exemple de demande adressée à l’API.
POST https://management.azure.com/{scope}/providers/Microsoft.CostManagement/exports/{exportName}/run?api-version=2021-10-01
Étapes suivantes
Dans ce didacticiel, vous avez appris à :
- Obtenir un jeton du porteur pour votre principal de service
- Mettre en forme la demande
- Exécuter les requêtes en blocs d’un mois
Pour en savoir plus sur les détails des coûts, consultez Ingérer des données sur les détails des coûts.
Pour en savoir plus sur les données disponibles dans le jeu de données des détails des coûts, consultez Comprendre les champs de données de détails des coûts.