使用Azure CLI为可用性测试附加警报规则时遇命名空间不支持错误
问题解决方案
错误原因
az monitor metrics alert create 用于创建平台指标警报,但 microsoft.insights/webtests(可用性测试资源)并不提供平台级指标。可用性测试的结果数据实际存储在关联的Application Insights实例的日志中,因此需要改用针对Application Insights日志的专用警报命令来实现需求。
解决方案
使用 az monitor app-insights alert create 命令(该命令专为Application Insights警报场景设计)创建可用性测试的警报规则,具体命令如下:
az monitor app-insights alert create \ --name alert3 \ --resource-group "{resource group}" \ --app "{app insight名称或资源ID}" \ --type availability \ --condition "avg availabilityPercentage <= 100" \ --window-size 5m \ --evaluation-frequency 1m \ --action-group "{action group名称或资源ID}" \ --description "location failed" \ --tags hidden-link:{app insight resource id}=Resource
参数说明
--app:指定与可用性测试关联的Application Insights实例的名称或资源ID(测试结果会写入该实例)--type availability:明确警报类型为可用性测试相关- 其余参数可保持与原命令一致,按需替换占位符内容
替代方案(适用于工作区集成的Application Insights)
如果你的Application Insights是工作区集成模式,也可以使用基于Log Analytics的日志警报命令:
az monitor log-analytics alert create \ --name alert3 \ --resource-group "{resource group}" \ --workspace "{Log Analytics工作区ID}" \ --query "availabilityResults | where name == 'Matrix Portal Availability' | summarize avg_availability = avg(availabilityPercentage) by bin(timestamp, 5m) | where avg_availability <= 100" \ --window-size 5m \ --evaluation-frequency 1m \ --action-group "{action group名称或资源ID}" \ --description "location failed" \ --tags hidden-link:{app insight resource id}=Resource
内容的提问来源于stack exchange,提问作者Heshan
相关产品推荐
相关产品推荐

