Запрос графа ресурсов Azure переписывает ответ тега по умолчанию
Я пытаюсь изменить ответ по умолчанию на запрос графа ресурсов Azure, аналогичный тому, который использует портал Azure. Мой запрос:
resourcecontainers | where type == "microsoft.resources/subscriptions" | project name, tags
Откуда ответ для тегов:
"tags": {
"TagA": "TeamA",
"TagB": "TeamB",
"TagC": "TeamC"
},
Я хотел бы изменить это на:
"tags": [
{
"name": "TagA",
"value": "TeamA"
},
{
"name": "TagB",
"value": "TeamB"
},
{
"name": "TagC",
"value": "TeamC"
}
]
Как это сделать? Все примеры, которые я нашел, относятся либо только к одному тегу, либо к статическому набору тегов. Мой должен поддерживать динамическое количество тегов.
1 ответ
Поскольку вы подтвердили, что для достижения вышеуказанного требования мы можем сделать это, используя приведенный ниже запрос.
resourcecontainers
| where type =~ 'microsoft.resources/subscriptions'
| mvexpand parsejson(tags)
| extend tagname = tostring(bag_keys(tags)[0])
| extend tagvalue = tostring(tags[tagname])
| project name, tagname, tagvalue
Для получения дополнительной информации, пожалуйста, обратитесь к этому БЛОГУ