gcp 监控“任何时间序列违规”与“所有时间序列违规”

0xF*_*0D3 6 monitoring google-cloud-platform stackdriver google-cloud-monitoring

在此输入图像描述

“任何时间序列违规”和“所有时间序列违规”这两个选项有什么区别?我可以想象前者会做什么,但我不知道后者会做什么。

所有时间系列?它的射程有多长?为什么它有一个for选项?

c69*_*c69 8

“任何时间序列违规”和“所有时间序列违规”这两个选项有什么区别?我可以想象前者会做什么,但我不知道后者会做什么。

首先,什么是“时间序列违规”——当指标的当前值超出预期范围时,例如:高于指定的阈值。

其次,“任意/全部/百分比/数字” - 假设您有 5 个时间序列,例如:5 个实例的 CPU 使用情况,则每个下拉选项在以下情况下将违反整个警报条件:

  • “任何时间序列”:时间序列中的任何一个都是违规的
  • “所有时间序列”:所有 5 个时间序列均违规
  • “时间序列的百分比”(40%):五分之二的时间序列是违规的,是的,在小数字上选择 39% 或 41% 会给你不同的结果,所以
  • “时间序列数”(3):5 个时间序列中有 3 个违规

第三,for又名“持续时间框”,它看起来像“如果我的时间序列违反了 5 分钟,则违反了条件”。对于一些更简单的警报,这甚至可以工作,但是一旦您尝试将其与“指标不存在”或其他复杂的配置结合起来,您将看到实际发生的情况是“问题出现后等待 5 分钟,然后只有这样才会触发违规行为”。

在实践中,不鼓励使用for字段,最好将其保留为默认的“最新值”。

如果您确实需要“CPU 使用率在 5 分钟内超过 90%”,那么正确的方法是对数据进行去噪/平滑处理:

  • 将对齐周期设置为 5 分钟(或任何您想要的滑动窗口)
  • 然后选择合理的对准器(例如,mean它将平均值)
  • 然后,虽然图表中的数据点较少,但它们的噪音会较小,您可以根据最新值采取行动。