【问题标题】:metric filter is not assigned to metric alarm指标过滤器未分配给指标警报
【发布时间】:2021-08-14 22:07:29
【问题描述】:

我正在使用 terraform 设置 aws cloudwatch 日志,以便在日志中出现错误时发送电子邮件。

这是 terraform 文件的样子:

resource "aws_cloudwatch_log_metric_filter" "error-importing-rfid-metric-filter" {
  name           = "rfid-data-import-metric-filter"
  log_group_name = var.SERVICE_NAME
  pattern        = "ERROR"
  metric_transformation {
    name      = "error-rfid-data-import"
    namespace = "DataImportErrorMetrics"
    value     = "1"
  }
}

resource "aws_cloudwatch_metric_alarm" "error-importing-rfid" {
  alarm_name          = "error-rfid-data-import"
  metric_name         = "DataImportErrorMetrics"
  threshold           = "0"
  statistic           = "Sum"
  comparison_operator = "GreaterThanThreshold"
  datapoints_to_alarm = "1"
  evaluation_periods  = "1"
  period              = "60"
  namespace           = "LogMetrics"

  alarm_actions = [aws_sns_topic.alarm.arn]
}

运行 terraform apply 后,我可以看到过滤器已创建,警报也已创建。但是在警报部分下,没有列出警报。您可以在图中看到,有 2 个过滤器,左侧的过滤器列出了警报名称,右侧的过滤器不显示。左边的那个是在 aws 控制台上手动创建的,右边的那个是来自 terraform 的。确实,在控制台上创建的那个就像一个魅力,但右边的那个仍然处于数据不足状态

【问题讨论】:

    标签: amazon-web-services terraform amazon-cloudwatch cloudwatch-alarms


    【解决方案1】:

    我解决了这个问题。指标名称实际上是指标转换名称。并且 metric_transformation 中的命名空间必须与 aws_cloudwatch_metric_alarm 中的命名空间相同。正确的sn-p应该是

    resource "aws_cloudwatch_log_metric_filter" "error-importing-rfid-metric-filter" {
      name           = "rfid-data-import-metric-filter"
      log_group_name = var.SERVICE_NAME
      pattern        = "ERROR"
      metric_transformation {
        name      = "error-rfid-data-import-metric"
        namespace = "LogMetrics"
        value     = "1"
      }
    }
    
    //set up the alarm
    resource "aws_cloudwatch_metric_alarm" "error-importing-rfid" {
      alarm_name          = "error-rfid-data-import-alarm"
      metric_name         = "error-rfid-data-import-metric"
      threshold           = "0"
      statistic           = "Sum"
      comparison_operator = "GreaterThanThreshold"
      datapoints_to_alarm = "1"
      evaluation_periods  = "1"
      period              = "60"
      namespace           = "LogMetrics"
    
      alarm_actions = [aws_sns_topic.alarm.arn]
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-10-22
      • 2020-10-25
      • 2021-06-23
      • 2021-04-16
      • 1970-01-01
      • 2019-12-26
      • 2019-05-04
      • 2021-11-14
      相关资源
      最近更新 更多