如何在MQL中使用GCP度量资源管理器以30分钟的间隔从订阅id中获取所有值的总和



我想使用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.01 k/s等

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

MQL有一个缩放函数,可以用来缩放一个值。在这种情况下,在align步骤之后添加一个缩放函数可以将其缩放为所需的单位。比例函数将一个单位的值乘以一个比例因子,该比例因子将其转换为另一个单位的值。

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

相关内容

  • 没有找到相关文章

最新更新