如何在Visual Studio Code中通过Kusto连接Azure订阅以执行资源查询?
解决VS Code中用Kusto连接Azure订阅查询资源的问题
看来你踩了个新手常见的坑:找错数据源啦!你要查的resources表属于Azure Resource Graph (ARG),这是专门用来跨订阅查询Azure资源的服务,和你之前尝试连接的Azure Data Explorer(ADX)、Application Insights完全不是一回事,所以那些连接方式里根本找不到这个表。下面一步步教你正确操作:
1. 先装对VS Code扩展
- 首先得装Azure Resource Graph扩展,再搭配Kusto Language Support扩展(给你提供Kusto语法高亮和智能提示,写查询更顺手)。如果习惯用Azure CLI,也可以装Azure CLI扩展辅助登录。
2. 登录并切换到目标Azure订阅
- 打开VS Code左侧的Azure面板(那个蓝色的云图标),点击「Sign in to Azure」完成账号登录,确保你的账号能访问要查询的订阅。
- 要是你有多个订阅,得切换到目标订阅:要么在Azure面板的订阅列表里直接选择,要么打开终端执行命令:
az account set --subscription <你的订阅ID或名称>
3. 连接到Azure Resource Graph数据源(两种可选方式)
方式一:用Azure Resource Graph扩展直接查
- 在Azure面板里找到「Resource Graph」节点,右键点击选择「New Query」。
- 在弹出的查询窗口里,直接输入你的Kusto语句:
resources | where type == "microsoft.compute/disks" - 点查询窗口上方的「Run Query」按钮,就能看到你的磁盘资源啦。
方式二:用Kusto扩展连接ARG端点
- 装了Kusto扩展后,左侧会出现Kusto面板,点击「Add Connection」。
- 连接类型选「Azure Resource Graph」,接着选择你要查询的订阅,完成连接。
- 连接成功后,在Kusto面板里找到对应的ARG数据源,打开查询窗口输入语句执行就行。
4. 检查权限(如果还是报错)
要是执行查询还是失败,得确认你的账号在目标订阅里有Reader或者Resource Graph Query Contributor角色权限——至少要有Reader权限才能读取资源信息。你可以去Azure门户的订阅IAM设置里查看和配置权限。
另外提一句:你之前试的Samples、SampleIoTData这些表都是ADX的示例数据集,和你的Azure订阅资源完全不相关,所以查不到内容很正常~只有连接到ARG数据源,才能访问resources表查询你的真实Azure资源。
内容的提问来源于stack exchange,提问作者Francesco Mantovani
相关产品推荐
相关产品推荐

