terraform 创建 azure 服务健康警报

时间:2020-12-21 22:50:16

标签: terraform terraform-provider-azure azure-monitoring

我刚刚发现,如果我们使用 terraform 创建 azure 服务健康警报,使用以下代码

resource "azurerm_monitor_activity_log_alert" "servicehealth" {
  name                = "${var.client_initial}-MCS Maintain Service Health"
  description         = "${var.client_initial}-MCS Maintain Service Health Alerts"
  resource_group_name = var.resource_group_name
  scopes              = [var.scopes]
  criteria {
    category = "ServiceHealth"
  }
  tags = var.tags
  action {
    action_group_id = var.action_group_id
  }
}

当我应用 terraform 时,它应用得很好,但是当我检查门户时,没有选择任何区域。 你不能通过门户做同样的事情,如果你通过门户做,你必须选择地区或选择所有地区。

所以如果通过 terraform 部署并且没有选择区域,是否意味着它适用于所有区域?

我在 github 上看到,对此进行更精细的控制仍然是一个悬而未决的问题 https://github.com/terraform-providers/terraform-provider-azurerm/issues/2996

2 个答案:

答案 0 :(得分:1)

区域将根据

确定
resource_group_name = var.resource_group_name

其中 resource_group_name 需要 azurerm_resource_group 的实例:

resource "azurerm_resource_group" "example" {
  name     = "example"
  location = "West Europe"
}

<块引用>

location -(必需)Azure 区域,资源组应存在于其中。更改此设置会强制创建新的资源组。

答案 1 :(得分:0)

据我所知,活动日志警报的位置始终是 3.8。可以在三个级别创建活动日志警报:资源级别、资源组级别和订阅级别。资源组和订阅都可以包含多个区域的资源。而且您在创建它时也无法设置位置。不确定,但活动日志警报似乎没有除 Global 之外的特殊区域。