GCP 中的正常运行时间:测量 _any_ 位置站点可用时的正常运行时间百分比

问题描述

我们的网站在 Google App Engine 上运行,我们已经设置了监控和正常运行时间警报。

我们希望能够将站点正常运行时间报告为百分比,如果可以从 6 个位置中的任何一个访问站点,则考虑该站点

  • 如果位置 A 无法访问该站点,但位置 B、C、D、E 和 F 可以。该网站已启动。
  • 如果位置 A、B、C、D 和 E 无法访问该站点,但位置 F 可以。该网站已启动。
  • 如果位置 A、B、C、D、E 和 F 无法访问该站点。该网站已关闭

目前百分比计算是:(1 - 失败检查的总数)/(检查的总数)。不幸的是,这意味着正常运行时间会受到无法访问该站点的单个位置的影响。

是否可以获得我们所追求的正常运行时间计算?

解决方法

您可以为此创建一个 uptime chart
如果您按应用对数据进行分组,并将聚合器设置为 fraction true,则仅当所有正常运行时间检查失败时,图形才会达到零。
查询看起来像这样(这是针对 VM 实例的):

fetch gce_instance
| metric 'monitoring.googleapis.com/uptime_check/check_passed'
| filter (metric.check_id == 'uptime-1')
| group_by 1m,[value_check_passed_count_true: count_true(value.check_passed)]
| every 1m

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...