Comment puis-je vérifier la quantité d'espace que j'ai utilisée dans chacun de mes comptes de stockage Azure dans mon groupe de ressources d'abonnement?.
Je ne parviens pas à contrôler un espace utilisé dans le compte de stockage Azure via powershell, la CLI, le portail ...
La taille de stockage Azure comprend l'ensemble des 4 services (blob, file d'attente, fichier, table). À ma connaissance, il n’existe aucun moyen de calculer la taille totale de tous les services pour le moment.
Toutefois, vous pouvez utiliser l'espace des objets blob sur Portal à l'aide de métriques Azure. Veuillez sélectionner Moniteur -> Métriques
Pour plus d'informations sur la surveillance d'un compte de stockage sur le portail Azure, veuillez vous reporter à ce lien .
En outre, vous pouvez utiliser PowerShell pour obtenir votre utilisation de blob. Il y a un bon script que vous pourriez utiliser.
Azure Storage Explorer a un bouton "Statistiques de l'annuaire".
Naviguer dans un dossier
Cliquez sur le bouton
Le total est indiqué dans le panneau des activités
Voici un script .net core
que j'utilise pour répertorier l'utilisation du compte de stockage en utilisant la valeur de métrique moyenne de la dernière heure.
using System;
using System.Collections.Generic;
using System.IO;
using System.Threading;
using Microsoft.Azure.Management.CosmosDB.Fluent.Models;
using Microsoft.Azure.Management.Fluent;
using Microsoft.Azure.Management.Monitor;
using Microsoft.Azure.Management.Monitor.Models;
using Microsoft.Rest.Azure.Authentication;
namespace storagelist
{
class Program
{
static async System.Threading.Tasks.Task Main(string[] args)
{
// to generate my.azureauth file run the follow command:
// az ad sp create-for-rbac --sdk-auth > my.azureauth
var Azure = Azure.Authenticate("my.azureauth").WithDefaultSubscription();
var accounts = Azure.StorageAccounts.List();
// can get values from my.azureauth
var tenantId = "";
var clientId = "";
var clientSecret = "";
var serviceCreds = await ApplicationTokenProvider.LoginSilentAsync(tenantId, clientId, clientSecret);
MonitorManagementClient readOnlyClient = new MonitorManagementClient(serviceCreds);
var oneHour = System.TimeSpan.FromHours(1);
var startDate = DateTime.Now.AddHours(-oneHour.Hours).ToUniversalTime().ToString("o");
string endDate = DateTime.Now.ToUniversalTime().ToString("o");
string timeSpan = startDate + "/" + endDate;
List<string> fileContents = new List<string>();
foreach (var storage in accounts)
{
var response = await readOnlyClient.Metrics.ListAsync(
resourceUri: storage.Id,
timespan: timeSpan,
interval: oneHour,
metricnames: "UsedCapacity",
aggregation: "Average",
resultType: ResultType.Data,
cancellationToken: CancellationToken.None);
foreach (var metric in response.Value)
{
foreach (var series in metric.Timeseries)
{
foreach (var point in series.Data)
{
if (point.Average.HasValue)
{
fileContents.Add($"{storage.Id}, {point.Average.Value}");
break;
}
}
break;
}
break;
}
}
await File.WriteAllLinesAsync("./storage.csv", fileContents);
}
}
}