基于指标名称的自定义指标的所有维度上的Cloudwatch Alarm

时间:2020-02-11 01:19:44

标签: amazon-cloudwatch amazon-cloudwatch-metrics cloudwatch-alarms

我们正在从服务中发布自定义Cloudwatch指标,并希望在指标名称的值超出任何维度的阈值时设置警报。以下是我们发布的指标:

  1. 名称空间= SameName,MetricName = Fault,尺寸= [ Operation = A ,Program = ServiceName]
  2. 名称空间= SameName,MetricName = Fault,尺寸= [ Operation = B ,Program = ServiceName]
  3. 名称空间= SameName,MetricName = Fault,尺寸= [ Operation = C ,Program = ServiceName]

我们想要设置一个警报,以便任何维度的select f.foreign_id, d.date, v.id, t.name from (select distinct foreign_id from t) f cross join (select distinct date from t) d cross join (values (1), (2), (3), (4), (5)) v(id) left join t on t.foreign_id = f.foreign_id and t.date = d.date and t.id = v.id; 都进入Fault状态。

如您所见,维度Operation的值是不同的。当前,我们只有这3个操作,因此我了解我们可以使用度量数学来设置此警报。但是我确信我们会达到一个持续增长的地步。

我能够使用SEARCH表达式+在整个搜索表达式中进行聚合来为其生成图形,但是这不能让我创建一个警告,说Alarm

还有其他方法可以实现吗?

2 个答案:

答案 0 :(得分:6)

尚不支持直接在SEARCH上报警。您将必须创建一个度量标准数学表达式,在其中列出所有3个度量标准,然后创建一个使用3个最大值中的一个的表达式,例如MAX(METRICS())。确保仅将表达式标记为可见,以便图形上只有1条线。

答案 1 :(得分:1)

如Dejan所述,Cloudwatch尚不支持搜索警报。 另一个限制是您只能添加up to 10 metrics to a metric math expression,而您可以使用new composite alarms来克服。

如果您考虑使用第三方服务,则可以尝试DataDog

使用DataDog,您可以导入您的CloudWatch指标并设置multi-alarms,该指标将遵循(并自动发现)特定指标下的所有标签。

可能还有其他服务可以提供这种功能,但是我特别有使用此工具的经验。