【问题标题】:How to get the sum of all values from a pusub subscription id in 30 minute intervals using GCP metrics explorer in MQL如何使用 MQL 中的 GCP 指标资源管理器以 30 分钟的间隔从 pubsub 订阅 id 获取所有值的总和
【发布时间】:2022-08-03 21:47:49
【问题描述】:

我想使用 MQL 从值中获取 30 分钟间隔内的值的总和。

我目前正在使用sent message count 指标,因为它似乎符合我的需求。我希望我的输出按订阅 ID 和过去 30 分钟内所有值的总和进行分组。

我尝试了很多不同的组合来实现我想要的输出,但没有运气。

目前我有这个查询:

fetch pubsub_subscription
| metric \'pubsub.googleapis.com/subscription/sent_message_count\'
| group_by [resource.subscription_id], sum(value.size)
| align rate(30m)
| every 30m

任何帮助将不胜感激 。谢谢

更新:

到目前为止,我已经更接近我想要的输出尝试这个查询:

fetch pubsub_subscription
| metric \'pubsub.googleapis.com/subscription/sent_message_count\'
| value [value.size: value.sent_message_count]
| group_by [resource.subscription_id], sum(value.size)
| every 30m

这个查询让我看到消息的计数。 18.77M , 0.39M 等但是,当我添加 | align rate(1w) 时,它会将值转换为 k/s 而不是 M 例如。 1.29k/s、0.01k/s等

如何将这些数字转换为消息总数?

    标签: google-cloud-platform google-cloud-monitoring monitoring-query-language


    【解决方案1】:

    MQL 有一个scale 函数,可用于缩放值。在这种情况下,在 align 步骤之后添加一个缩放函数可用于根据需要对其进行缩放以具有单位。缩放函数将一个单位的值乘以一个缩放因子,将其转换为具有不同单位的值。

    例如,表达式 scale(3 "min", "s") 会将单位为分钟 (min) 的值 3 转换为单位为秒 (s) 的值 180。相同的时间,用不同的单位表示。单位根据UCUM 标准给出。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-10-23
      • 1970-01-01
      • 2020-03-04
      • 1970-01-01
      • 2016-09-27
      • 2023-02-20
      • 2019-09-12
      • 2011-09-25
      相关资源
      最近更新 更多