Dela via


Felsöka fel med Azure Resource Graph

Du kan stöta på fel när du kör frågor mot Azure-resurser med Azure Resource Graph. Den här artikeln beskriver olika fel som kan uppstå och hur du löser dem.

Hitta felinformation

De flesta felen beror på problem när en fråga körs med Azure Resource Graph. När en fråga misslyckas innehåller SDK:n information om frågan som misslyckas. Den här informationen anger problemet så att det kan åtgärdas och en senare fråga lyckas.

Allmänna fel

Scenario: Begränsade begäranden

Problem

Kunder som gör stora eller frekventa resursfrågor har begäranden begränsade.

Orsak

Azure Resource Graph allokerar ett kvotnummer för varje användare baserat på ett tidsfönster. En användare kan till exempel skicka högst 15 frågor inom varje 5 sekunders fönster utan att begränsas. Kvotvärdet bestäms av många faktorer och kan komma att ändras. Mer information finns i Begränsning i Azure Resource Graph.

Lösning

Det finns flera metoder för att hantera begränsade begäranden:

Scenario: För många prenumerationer

Problem

Kunder med åtkomst till fler än 1 000 prenumerationer, inklusive prenumerationer mellan klientorganisationer med Azure Lighthouse, kan inte hämta data i alla prenumerationer i ett enda anrop till Azure Resource Graph.

Orsak

Azure CLI och PowerShell vidarebefordrar endast de första 1 000 prenumerationerna till Azure Resource Graph. REST-API:et för Azure Resource Graph har en maxgräns för hur många prenumerationer som frågan kan köras mot.

Lösning

Batch-begäranden för frågan med en delmängd prenumerationer för att hålla sig under gränsen på 1 000 prenumerationer. Lösningen använder parametern Prenumeration i 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

Scenario: REST-rubrik av innehållstyp som inte stöds

Problem

Kunder som frågar Azure Resource Graph REST API får ett svar på 500 (internt serverfel) returnerat.

Orsak

Rest-API:et för Azure Resource Graph stöder endast ett Content-Typeprogram/json. Vissa REST-verktyg eller agenter är standard för text/oformaterad, vilket inte stöds av REST-API:et.

Lösning

Kontrollera att verktyget eller agenten som du använder för att fråga Azure Resource Graph har REST API-huvudet Content-Type konfigurerat för application/json.

Scenario: Ingen läsbehörighet för alla prenumerationer i listan

Problem

Kunder som uttryckligen skickar en lista över prenumerationer med en Azure-Resource Graph fråga får svaret 403 (Förbjuden).

Orsak

Om kunden inte har läsbehörighet till alla angivna prenumerationer nekas begäran på grund av brist på lämpliga säkerhetsrättigheter.

Lösning

Inkludera minst en prenumeration i prenumerationslistan som kunden som kör frågan har minst läsbehörighet till. Mer information finns i Behörigheter i Azure Resource Graph.

Nästa steg

Om du inte ser problemet eller inte kan lösa problemet kan du gå till någon av följande kanaler för mer support:

  • Få svar från Azure-experter via Azure-forum.
  • Anslut med @AzureSupport – det officiella Microsoft Azure-kontot för att förbättra kundupplevelsen genom att ansluta Azure-communityn till rätt resurser: svar, support och experter.
  • Om du behöver mer hjälp kan du skicka in en Azure Support incident. Gå till Azure Support-webbplatsen och välj Hämta support.