在 Google 云监控中获取随时间变化的比率

Get ratios with time shift in Google Cloud Monitoring

我是 运行 一个将数据与 7 天前的数据进行比较的查询。查询仅显示是否存在差异。它不反映差异是增加还是减少。

我正在寻找的是一条中心 0 线,其中有一个折线图,显示当前数据相对于上周的数据是增加还是减少,(理想情况下)以百分比表示。

fetch generic_node
| metric 'custom.googleapis.com/myCustomMetric'
| group_by 4h, [row_count: row_count()]
| {value [v_now: val()] ; time_shift 1w}
| join | div

怎么样:

fetch generic_node
| metric 'custom.googleapis.com/myCustomMetric'
| group_by [], [row_count: row_count()]
| {value [v_now: val()] ; time_shift 1w}
| join | div

或者

fetch generic_node
| metric 'custom.googleapis.com/myCustomMetric'
| group_by [], mean(val())
| {
    ident
  ;
    time_shift 1w
  }
| join | div

文档:

只需将最后的table操作改为sub:

fetch generic_node
| metric 'custom.googleapis.com/myCustomMetric'
| group_by 4h, [row_count: row_count()]
| {value [v_now: val()] ; time_shift 1w}
| join | sub

请注意,在 join table 操作之后,您将获得一个包含两个值列的时间序列 table - 第一列用于当前数据,第二列用于上周数据。以下算术函数(算术运算符的文本名称)充当 table 操作快捷方式,通过对两个值列执行该算术函数来生成单个值列。

div这里的意思是

| value div(val(0), val(1))

这就是您得到比率的原因。而 sub 表示

| value sub(val(0), val(1))

在哪里可以找到差异。

https://cloud.google.com/monitoring/mql/reference?hl=en#div-func https://cloud.google.com/monitoring/mql/reference?hl=en#sub-func