我使用以下 Terraform 代码创建了 Azure Monitor 警报:
resource "azurerm_monitor_metric_alert" "azureMonitorMetricAlert1VmCpuCritical1" {
name = "VM CPU Critical"
resource_group_name = var.resourceGroup1Name
scopes = [var.logAnalytics1Id]
target_resource_type = ""
description = "Action will be triggered when Virtual Machine CPU is greater than 95%"
frequency = "PT1M"
window_size = "PT5M"
criteria {
metric_namespace = "Microsoft.OperationalInsights/workspaces"
metric_name = "Average_% Processor Time"
aggregation = "Average"
operator = "GreaterThan"
threshold = 95
dimension {
name = "Computer"
operator = "Include"
values = ["*"]
}
}
action {
action_group_id = azurerm_monitor_action_group.azureMonitorActionGroup1.id
}
tags = var.tags
}
但是,这不会触发任何警报(电子邮件/短信),除非我在门户中手动创建警报,甚至是相同的警报和指标等。哪个顺序无关紧要;我在TF中创建了上面的alert,然后手动创建了另一个alert;或者我手动创建警报然后运行 TF 代码。但无论如何,如果没有手动创建的警报,TF 警报就不会触发。
有没有其他人看到这个问题?
我已经将来自 PS cmdlet 的数据:Get-AzMetricAlertRuleV2 与创建的警报进行了比较,它们是相同的。
有什么想法吗?