Azure资源图查询:如何用SubscriptionName替换SubscriptionId提升可读性?
解决方案
当然可以实现这个需求,你需要通过关联subscriptions表来获取订阅名称,替换原查询中的subscriptionId。resourcecontainers表仅存储订阅ID,而订阅名称需要从subscriptions表中获取。
修改后的Kusto查询如下:
resourcecontainers where type == 'microsoft.resources/subscriptions/resourcegroups' // 关联订阅表获取名称 join kind=inner ( subscriptions where type == 'microsoft.resources/subscriptions' project subscriptionId, subscriptionName = name ) on subscriptionId // 投影需要的字段,用subscriptionName替代subscriptionId project subscriptionName, resourceGroup, tags.mytag1, tags.mytag2, tags.mytag3
关键说明:
- 使用
join kind=inner关联两个表,确保只保留能匹配到订阅名称的资源组数据(如果需要保留所有资源组,哪怕没有匹配到名称,可以改用leftouterjoin) - 在子查询中从
subscriptions表提取subscriptionId和name,并将name重命名为subscriptionName - 最终
project阶段直接使用subscriptionName替代原有的subscriptionId,让结果更直观可读
内容的提问来源于stack exchange,提问作者Francesco Mantovani
相关产品推荐
相关产品推荐

