Google cloud platform 无法在使用Terraform的GCP警报策略的google_monitoring_alert_策略中添加多个条件

Google cloud platform 无法在使用Terraform的GCP警报策略的google_monitoring_alert_策略中添加多个条件,google-cloud-platform,terraform,terraform-provider-gcp,Google Cloud Platform,Terraform,Terraform Provider Gcp,请让我知道如何通过Terraform在GCP警报策略中提及多个条件。我尝试了几种创建文档中提到的条件列表的方法,但没有任何效果 下面是代码片段: resource "google_monitoring_alert_policy" "alert_policy" { display_name = "Request count Policy" combiner = "OR" conditions =

请让我知道如何通过Terraform在GCP警报策略中提及多个条件。我尝试了几种创建文档中提到的条件列表的方法,但没有任何效果

下面是代码片段:

resource "google_monitoring_alert_policy" "alert_policy" {
  display_name = "Request count Policy"
  combiner     = "OR"
  conditions   = [
    display_name = "Request count condition"
    condition_threshold  {
      filter          = "metric.type=\"run.googleapis.com/request_count\" AND resource.type=\"cloud_run_revision\" AND metric.label.response_code_class=\"4xx\" AND resource.label.service_name=\"dev-ms\""
      duration        = "60s"
      comparison      = "COMPARISON_GT"
      threshold_value = 5
      trigger = {
        count = 1
      }
      aggregations  {
        alignment_period     = "60s"
        per_series_aligner   = "ALIGN_DELTA"
        cross_series_reducer = "REDUCE_SUM"
        group_by_fields      = ["metric.label.response_code_class", "resource.label.revision_name"]
      }
    },
    display_name = "Request latencies condition"
    condition_threshold {
      filter          = "metric.type=\"run.googleapis.com/request_count\" AND resource.type=\"cloud_run_revision\" AND metric.label.response_code_class=\"4xx\" AND resource.label.service_name=\"dev-ms\""
      duration        = "60s"
      comparison      = "COMPARISON_GT"
      threshold_value = 5
      trigger = {
        count = 1
      }
      aggregations  {
        alignment_period     = "60s"
        per_series_aligner   = "ALIGN_DELTA"
        cross_series_reducer = "REDUCE_SUM"
        group_by_fields      = ["metric.label.response_code_class", "resource.label.revision_name"]
      }
    }
]
  documentation {
    content = "The cloud run based request count alerting policy."
  }
  notification_channels = [
    google_monitoring_notification_channel.email0.id
  ]

  user_labels = {
    name = "offer-engine-alert-policy"
  }
}

下面的语法适合我。我没有使用[]声明列表,而是重复了条件块,结果成功了

resource "google_monitoring_alert_policy" "alert_policy" {
  display_name = "Request count Policy"
  combiner     = "OR"
  conditions   {
    display_name = "Request count condition"
    condition_threshold  {
      filter          = "metric.type=\"run.googleapis.com/request_count\" AND resource.type=\"cloud_run_revision\" AND metric.label.response_code_class=\"4xx\" AND resource.label.service_name=\"dev-ms\""
      duration        = "60s"
      comparison      = "COMPARISON_GT"
      threshold_value = 5
      trigger {
        count = 1
      }
      aggregations  {
        alignment_period     = "60s"
        per_series_aligner   = "ALIGN_DELTA"
        cross_series_reducer = "REDUCE_SUM"
        group_by_fields      = ["metric.label.response_code_class", "resource.label.revision_name"]
      }
    }
  }
  conditions   {
    display_name = "Request latencies condition"
    condition_threshold {
      filter          = "metric.type=\"run.googleapis.com/request_count\" AND resource.type=\"cloud_run_revision\" AND metric.label.response_code_class=\"4xx\" AND resource.label.service_name=\"dev-ms\""
      duration        = "60s"
      comparison      = "COMPARISON_GT"
      threshold_value = 5
      trigger  {
        count = 1
      }
      aggregations  {
        alignment_period     = "60s"
        per_series_aligner   = "ALIGN_DELTA"
        cross_series_reducer = "REDUCE_SUM"
        group_by_fields      = ["metric.label.response_code_class", "resource.label.revision_name"]
      }
    }
}
  documentation {
    content = "The cloud run based request count alerting policy."
  }
  notification_channels = [
    google_monitoring_notification_channel.email0.id
  ]

  user_labels = {
    name = "alert-policy"
  }
}

显示您所做的工作以及错误消息和/或问题详细信息。嗨,John,似乎有一个语法问题我无法解决。我创建了一个条件列表,但TF apply会导致一个错误,突出显示此处不应出现的条件块*或缺少键值分隔符,并使用换行符作为块分隔符或银行来发布此信息!