View a markdown version of this page

限制 - Amazon CloudWatch
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

限制

常规 CloudWatch 配额

有关适用于告警的常规 CloudWatch 服务配额的信息,请参阅 CloudWatch 服务配额

基于 Metrics Insights 查询的告警适用的限制

使用 CloudWatch Metrics Insights 告警时,请注意以下功能限制:

  • 每个区域每个账户使用 Metrics Insights 查询产生的告警默认为 200 个

  • 只能使用最近 3 小时的数据来评估告警的情况。但告警详情页图表支持可视化展示最长两周的数据

  • 对多个时间序列进行评估的警报会将 ALARM 中的贡献者数量限制为 100 个

    • 假设查询检索到 150 个时间序列:

      • 如果 ALARM 中的贡献者少于 100 个(例如 95 个),则 StateReason 将为“被评估为 ALARM 的 150 个时间序列中的 95 个”

      • 如果 ALARM 中有超过 100 个贡献者(例如 105 个),则 StateReason 将是“被评估为 ALARM 的 100 多个时间序列”

    • 此外,如果属性的数量太大,ALARM 中的贡献者数量可以限制在 100 个以内。

  • Metrics Insights 对分析或返回的最大时间序列数量的限制适用

  • 在告警评估期间,EvaluationState 将设置为 PARTIAL_DATA,以满足以下限制:

    • 如果 Metrics Insights 查询返回超过 500 个时间序列。

    • 如果 Metrics Insights 查询匹配的指标超过 10000 个。

有关 CloudWatch 服务配额与限制的更多信息,请参阅 CloudWatch Metrics Insights 服务配额

基于 PromQL 查询的警报适用的限制

使用 CloudWatch PromQL 警报时,请注意以下功能限制:

  • 对多个时间序列进行评估的警报会将 ALARM 中的贡献者数量限制为 100 个

    • 如果 ALARM 中的贡献者少于 100 个(例如 95 个),则 StateReason 将为“被评估为 ALARM 的 95 个时间序列”

    • 如果 ALARM 中有超过 100 个贡献者(例如 105 个),则 StateReason 将是“被评估为 ALARM 的 100 多个时间序列”

    • 此外,如果属性的数量太大,ALARM 中的贡献者数量可以限制在 100 个以内。

  • PromQL 查询对分析或返回的最大时间序列数量的限制适用

  • 在警报评估期间,如果 PromQL 查询返回的时间序列超过 500 个,则 EvaluationState 将设置为 PARTIAL_DATA

基于连接的数据来源适用于告警的限制

  • 当 CloudWatch 评估警报时,即使警报的时间长于一分钟,也会每分钟评估一次。要使警报起作用,Lambda 函数必须能够返回从任何一分钟开始的时间戳列表,而不仅仅是周期长度的倍数。这些时间戳必须相隔一个周期长度。

    因此,如果 Lambda 查询的数据来源只能返回周期长度的倍数的时间戳,则该函数应对获取的数据“重新采样”以匹配 GetMetricData 请求所期望的时间戳。

    例如,每分钟评估一个周期为五分钟的警报,使用五分钟的窗口,每次偏移一分钟。在本例中:

    • 对于在 12:15:00 进行的警报评估,CloudWatch 预计数据点的时间戳为 12:00:0012:05:0012:10:00

    • 然后,对于在 12:16:00 进行的警报评估,CloudWatch 预计数据点的时间戳为 12:01:0012:06:0012:11:00

  • 当 CloudWatch 评估警报时,Lambda 函数返回的与预期时间戳不一致的任何数据点都将被丢弃,并使用剩余的预期数据点对警报进行评估。例如,当在 12:15:00 对警报进行评估时,其期望的数据的时间戳为 12:00:0012:05:0012:10:00。如果收到时间戳为 12:00:0012:05:0012:06:0012:10:00 的数据,则 12:06:00 的数据将被丢弃,CloudWatch 会使用其他时间戳评估警报。

    然后,在 12:16:00 的下一次评估中,其期望的数据的时间戳为 12:01:0012:06:0012:11:00。如果只有时间戳为 12:00:0012:05:0012:10:00 的数据,则所有这些数据点都将在 12:16:00 被忽略,警报会根据您指定的警报处理缺失数据的方式转换状态。有关更多信息,请参阅 告警评估

  • 我们建议您创建这些警报,以便在其转换为 INSUFFICIENT_DATA 状态时采取行动,因为无论您设置警报以何种方式处理缺失数据,多个 Lambda 函数失败用例都会将警报转换为 INSUFFICIENT_DATA

  • 如果 Lambda 函数返回一个错误:

    • 如果在调用 Lambda 函数时出现权限问题,则警报会根据您在创建警报时指定的缺失数据处理方式,开始进行缺失数据转换。

    • 任何其他来自 Lambda 函数的错误都会导致警报转换为 INSUFFICIENT_DATA

  • 如果 Lambda 函数请求的指标有一定的延迟,以至于最后一个数据点总是缺失,则应采用相应的解决方法。您可以创建 M 个警报(共 N 个)或延长警报的评估周期。有关 M 个警报(共 N 个)的更多信息,请参阅 告警评估