Compartir a través de


Solución de problemas relativos a errores con Azure Resource Graph

Puede que se produzcan errores al consultar los recursos de Azure con Azure Resource Graph. En este artículo se describen diversos errores que pueden producirse y cómo resolverlos.

Búsqueda de detalles del error

La mayoría de los errores son el resultado de una incidencia al ejecutar una consulta con Azure Resource Graph. Cuando se produce un error en una consulta, el SDK proporciona detalles sobre la consulta errónea. Esta información indica la incidencia, de modo que se pueda corregir y que una consulta posterior se realice correctamente.

Errores generales

Escenario: solicitudes limitadas

Incidencia

Los clientes que realizan consultas de recursos de gran tamaño o frecuentes tienen solicitudes limitadas.

Causa

Azure Resource Graph asigna un número de cuota para cada usuario basado en una ventana de tiempo. Por ejemplo, un usuario puede enviar como máximo 15 consultas dentro de cada ventana de 5 segundos sin que se vea limitado. El valor de la cuota se determina según varios factores y está sujeto a cambios. Para obtener más información, consulte Limitaciones en Azure Resource Graph.

Resolución

Hay varios métodos para tratar las solicitudes limitadas:

Escenario: demasiadas suscripciones

Incidencia

Los clientes con acceso a más de 1000 suscripciones, incluidas las suscripciones entre inquilinos con Azure Lighthouse, no pueden capturar datos en todas las suscripciones en una única llamada a Azure Resource Graph.

Causa

La CLI de Azure y PowerShell reenvían solo las primeras 1000 suscripciones a Azure Resource Graph. La API REST para Azure Resource Graph acepta un número máximo de suscripciones en las que realizar la consulta.

Resolución

Solicitudes por lotes de la consulta con un subconjunto de suscripciones para permanecer debajo del límite de suscripción de 1000. La solución es usar el parámetro Subscription en 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

Escenario: encabezado Content-Type de REST no admitido

Incidencia

Los clientes que consultan la API REST de Azure Resource Graph reciben una respuesta 500 (error interno del servidor).

Causa

La API REST de Azure Resource Graph solo admite un elemento Content-Type de application/json. Algunas herramientas o agentes de REST se establecen de forma predeterminada en texto/sin formato, un valor que la API REST no admite.

Resolución

Compruebe que la herramienta o el agente que está usando para realizar la consulta a Azure Resource Graph tiene el encabezado de la API REST Content-Type configurado para application/json.

Escenario: no tiene permiso de lectura para todas las suscripciones de la lista.

Incidencia

Los clientes que pasan explícitamente una lista de suscripciones con una consulta de Azure Resource Graph reciben una respuesta 403 (Prohibido).

Causa

Si el cliente no tiene permiso de lectura para todas las suscripciones proporcionadas, se denegará la solicitud debido a la falta de los derechos de seguridad adecuados.

Resolución

Incluya al menos una suscripción de la lista de suscripciones a la que el cliente que ejecuta la consulta tiene acceso de lectura como mínimo. Para obtener más información, vea Permisos en Azure Resource Graph.

Pasos siguientes

Si su problema no aparece o es incapaz de resolverlo, visite uno de nuestros canales para obtener ayuda adicional:

  • Obtenga respuestas de expertos de Azure en los foros de Azure.
  • Póngase en contacto con @AzureSupport, la cuenta oficial de Microsoft Azure para mejorar la experiencia del cliente, al dirigir a la comunidad de Azure a los recursos adecuados: respuestas, soporte técnico y expertos.
  • Si necesita más ayuda, puede registrar un incidente de soporte técnico de Azure. Vaya al sitio de Soporte técnico de Azure y seleccione Obtener soporte.