An Azure service that is used to collect, analyze, and act on telemetry data from Azure and on-premises environments.
Use Azure Resource Graph to query all subscriptions in the tenant and return the distinct database-related resource types. This is efficient and scalable because Resource Graph is designed for cross-subscription inventory and supports tenant/management group scope.
A practical approach is:
- In Azure Resource Graph (via Azure CLI, PowerShell, or Portal), query the
Resourcestable. - Filter on known database-related resource types (for example, Azure SQL Database, Azure Database for PostgreSQL, Azure Cosmos DB, etc.).
- Project only the
typefield and usedistinctto get the unique service types.
Example Kusto query pattern (simplified):
Resources
| where type in~ (
'microsoft.sql/servers/databases',
'microsoft.sql/servers',
'microsoft.documentdb/databaseaccounts',
'microsoft.dbforpostgresql/servers',
'microsoft.dbformysql/servers',
'microsoft.dbforpostgresql/flexibleservers',
'microsoft.dbformysql/flexibleservers'
)
| summarize by type
Run this at:
- Tenant or management group scope (via Azure CLI
az graph query, Azure PowerShellSearch-AzGraph, or Azure Portal → Resource Graph Explorer) to cover all 100+ subscriptions. - The result is a list of unique
typevalues, which correspond to the different database services in use.
If only a high-level list is needed (for example, “Azure SQL Database”, “Azure Cosmos DB”), map each type to its product name after the query (for example, microsoft.documentdb/databaseaccounts → Azure Cosmos DB).
This method avoids counting instances and focuses purely on the distinct service types, while remaining scalable across large environments.
References: