Résoudre les erreurs à l’aide d’Azure Resource Graph
Vous pouvez rencontrer des erreurs lors de l’interrogation de ressources Azure avec Azure Resource Graph. Cet article décrit différentes erreurs qui pourraient se produire et explique comment les résoudre.
Recherche des détails de l’erreur
La plupart des erreurs sont le résultat d’un problème lors de l’exécution d’une requête avec Azure Resource Graph. En cas d’échec d’une requête, le kit de développement logiciel (SDK) fournit des détails sur la requête qui a échoué. Ces informations précisent le problème afin que vous puissiez le résoudre et que la requête suivante réussisse.
Erreurs générales.
Scénario : Requêtes limitées
Problème
Lorsque les clients envoient des requêtes de ressources fréquentes ou volumineuses, ces dernières sont limitées.
Cause
Azure Resource Graph alloue un quota à chaque utilisateur en fonction d’une fenêtre de temps. Par exemple, un utilisateur peut envoyer au maximum 15 requêtes durant chaque fenêtre de cinq secondes sans être limité. La valeur de quota est déterminée par de nombreux facteurs et est susceptible de changer. Pour plus d’informations, voir Throttle in Azure Resource Graph (Limitation dans Azure Resource Graph).
Résolution
Il existe plusieurs méthodes pour traiter les requêtes limitées :
Scénario : Trop d’abonnements
Problème
Les clients ayant accès à plus de 1 000 abonnements, y compris les abonnements inter-clients avec Azure Lighthouse, ne peuvent pas extraire les données de tous les abonnements dans un seul appel à Azure Resource Graph.
Cause
Azure CLI et PowerShell transfèrent uniquement les 1 000 premiers abonnements à Azure Resource Graph. L’API REST pour Azure Resource Graph accepte un nombre maximal d’abonnements pour exécuter la requête.
Résolution
Requêtes par lots pour la requête avec un sous-ensemble d’abonnements à conserver sous la limite d’abonnement de 1 000. La solution utilise le paramètre d’Abonnement dans PowerShell.
# Replace this query with your own
$query = 'Resources | project type'
# Fetch the full array of subscription IDs
$subscriptions = Get-AzSubscription
$subscriptionIds = $subscriptions.Id
# Create a counter, set the batch size, and prepare a variable for the results
$counter = [PSCustomObject] @{ Value = 0 }
$batchSize = 1000
$response = @()
# Group the subscriptions into batches
$subscriptionsBatch = $subscriptionIds | Group -Property { [math]::Floor($counter.Value++ / $batchSize) }
# Run the query for each batch
foreach ($batch in $subscriptionsBatch){ $response += Search-AzGraph -Query $query -Subscription $batch.Group }
# View the completed results of the query on all subscriptions
$response
Scénario : En-tête REST Content-Type non pris en charge
Problème
Les clients qui interrogent l’API REST Azure Resource Graph reçoivent une réponse 500 (erreur de serveur interne).
Cause
L’API REST Azure Resource Graph prend en charge seulement un Content-Type
de application/json
. Certains outils ou agents REST sont par défaut de type text/plain
, qui n’est pas pris en charge par l’API REST.
Résolution
Vérifiez que l’outil ou l’agent que vous utilisez pour interroger Azure Resource Graph a l’en-tête d’API REST Content-Type
configuré pour application/json
.
Scénario : Aucune autorisation de lecture sur tous les abonnements répertoriés
Problème
Les clients qui transmettent explicitement une liste d’abonnements à l’aide d’une requête Azure Resource Graph obtiennent une réponse 403 (Interdit).
Cause
Si le client ne dispose pas d’autorisations de lecture sur tous les abonnements fournis, la requête est refusée en raison de l’absence de droits de sécurité appropriés.
Résolution
Incluez dans la liste d’abonnements au moins un abonnement auquel le client qui exécute la requête a accès en lecture. Pour plus d’informations, voir Autorisations dans Azure Resource Graph.
Étapes suivantes
Si votre problème ne figure pas dans cet article ou si vous ne parvenez pas à le résoudre, utilisez un des canaux suivants pour obtenir de l’aide :
- Obtenez des réponses de la part d’experts Azure via les Forums Azure.
- Connectez-vous avec @AzureSupport, qui est le compte Microsoft Azure officiel pour améliorer l’expérience client en connectant la communauté Azure aux ressources appropriées : réponses, support technique et experts.
- Si vous avez besoin de plus d’aide, vous pouvez signaler un incident au support Azure. Accédez au site du support Azure , puis cliquez sur Obtenir un support.