You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

无法通过Azure AZ 2.0 PowerShell模块列出告警求助

问题分析与解决方案

你遇到的问题其实不是Az.Monitor模块有故障,而是用错了针对新版告警的PowerShell命令——Get-AzAlertHistory这个cmdlet是专门针对旧版经典告警规则(类型为Microsoft.Insights/alertRules)设计的,而你部署的是新版多资源指标告警(类型为Microsoft.Insights/metricAlerts),两者的API和对应的PowerShell命令完全不兼容,所以才会只返回弃用警告但没有告警数据。

具体解决步骤:

  • 先确认你的告警类型:在Azure门户中打开触发的告警规则,查看其资源ID,如果包含Microsoft.Insights/metricAlerts,就属于新版多资源指标告警,需要使用以下命令来获取触发状态:

获取指定告警规则的触发状态

# 替换为你的资源组名和告警规则名称
Get-AzMetricAlertStatus -ResourceGroupName "your-resource-group" -Name "your-metric-alert-name"

批量查询订阅中所有触发的新版指标告警

如果要一次性找出订阅里所有状态为Fired的新版告警,可以用这条命令:

Get-AzMetricAlert | ForEach-Object {
    Get-AzMetricAlertStatus -ResourceGroupName $_.ResourceGroupName -Name $_.Name
} | Where-Object { $_.Status -eq "Fired" }

关于你看到的警告信息

那些提示是Az.Monitor模块的弃用预告,只是告知未来版本会调整命名空间和参数,并不是导致你无法获取数据的原因,完全可以忽略这些警告。

总结一下:你部署的新版多资源指标告警,必须使用Get-AzMetricAlertStatus(而非Get-AzAlertHistory)来查询触发状态,这才是匹配新版告警类型的正确命令。

内容的提问来源于stack exchange,提问作者edwio

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.13 07:30:38