Мне нужно убедиться, что все наши группы ресурсов имеют определенный тег.
Я знаю, что могу использовать политику, чтобы гарантировать, что любой созданный ресурс будет иметь тег, но для существующих ресурсов я пытаюсь придумать запрос с помощью AZ CLI.
В качестве дополнительной проблемы в середине имени тега есть пробел: теперь это «Cost Center» вместо «CostCenter». :-/
решение1
Я бы рекомендовал использоватьГрафик ресурсов Azureдля этого. Граф ресурсов позволяет вам запрашивать все ваши ресурсы Azure, используя язык Kusto либо в CLI, либо на портале.
Чтобы найти имя всех групп ресурсов, не имеющих тега «Центр затрат», можно выполнить такой запрос:
ResourceContainers
| project name, type, tags
| where type == 'microsoft.resources/subscriptions/resourcegroups'
| where tags !contains 'Cost Center'
| project name
В CLI этот запрос будет выглядеть так:
az graph query -q "ResourceContainers | project name, type, tags | where type == 'microsoft.resources/subscriptions/resourcegroups' | where tags !contains 'Cost Center' | project name"