我在使用 azure kusto 查询显示特定资源时遇到问题。
我想要的是编写一个 kusto 查询,它只显示 azure 中的数据库资源和服务器资源。
我写了以下关于数据库的查询:
resources
| where type in ("microsoft.sql/servers/databases","microsoft.dbforpostgresql/servers","microsoft.azuredata/postgresinstances","microsoft.dbformariadb/servers","microsoft.dbformysql/flexibleservers","microsoft.dbformysql/servers","microsoft.dbforpostgresql/flexibleservers","microsoft.dbforpostgresql/servergroups","microsoft.kusto/clusters/databases","microsoft.sql/managedinstances/databases","microsoft.synapse/workspaces/sqldatabases","ravenhq.db/databases","microsoft.documentdb/databaseaccounts")
| summarize Amount=count() by type
但是当我执行查询时,即使我只创建了一个,它也会向我显示两个数据库,额外的一个是“主”,不应该包括在内,因为资源组中只有一个资源
我也尝试过以下查询:
resources
| where type contains "database" | distinct type
| summarize Amount=count() by type
但问题是它不包括类型名称中没有“数据库”一词的所有数据库,例如“microsoft.azuredata/postgresinstances”
所以问题是,我如何编写一个在我的仪表板上显示所有数据库的查询。
与前面的数据库类似的问题的第二部分是我如何显示所有服务器。我尝试过以下查询:
resources
| where split(type,"/")[array_length(split(type,"/"))] contains "servers"
即使我有服务器,它也没有给我任何结果。然后我尝试了:
resources
| where type contains "/server" | distinct type
| summarize Amount=count() by type
那没有用,因为它还返回了包含工作“服务器”的所有数据库资源
我试图查看微软的文档,但不知道该怎么做。