如何获取新类型Azure告警(非经典)的ARM模板JSON Schema?
别着急,我给你几个实用的办法来搞定这个问题:
从已创建的告警直接导出ARM模板:既然你已经通过门户UI建了几个新类型告警,这是最省事的办法。找到你创建的告警规则,进入「自动化」菜单下的「导出模板」选项,Azure会直接生成该资源的完整ARM模板JSON,里面包含了所有符合Schema的字段和对应的值。你只要把需要复用的部分提取出来,替换成参数或者调整配置就能直接用了。
用CLI/PowerShell拉取现有资源的JSON结构:如果导出模板的方式不够灵活,你可以用Azure CLI或者PowerShell命令获取已存在的
scheduledqueryrules资源的完整定义。比如用CLI的话,执行这条命令:az resource show --resource-group <你的资源组名称> --name <告警规则名称> --resource-type microsoft.insights/scheduledqueryrules执行后返回的JSON就是该资源的完整结构,包括所有必填属性和可选配置,完全可以作为你编写新模板的参考。
参考REST API的请求体结构:其实Scheduled Query Rules的REST API文档里有明确的创建请求体定义,ARM模板的
properties部分和API请求体结构是一一对应的。你可以查看创建Scheduled Query Rule的API文档,里面会详细列出每个字段的类型、取值范围和用途,照着这个结构来写模板就不会错。查看最新的ARM模板参考文档:有时候经典告警的文档会排在搜索结果前面,但新类型的
scheduledqueryrules其实有专门的模板参考条目。你可以直接搜索「microsoft.insights/scheduledqueryrules ARM template」,找到官方的模板参考页面,里面有完整的Schema说明和示例片段。
内容的提问来源于stack exchange,提问作者Glen Thomas

