首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >PromQL:时间序列的样本计数

PromQL:时间序列的样本计数
EN

Stack Overflow用户
提问于 2022-07-07 11:04:37
回答 1查看 312关注 0票数 0

对于一个2分钟的时间窗口,该向量有以下结果(我正在使用Grafana探索,并选择2分钟的时间):

代码语言:javascript
复制
instana_metrics{aggregation="max", endpoint="mutation addProduct"}

t1 - 3051
t2 - 5347
t3 - 5347
t4 - 4224
t5 - 4224

我需要一些相当于

代码语言:javascript
复制
SELECT Count(*)
FROM   instana_metrics

结果为5

我能想到的最好的就是这个

代码语言:javascript
复制
count( instana_metrics{aggregation="max", endpoint="mutation addProduct"} )

t1 | 1
t2 | 1
t3 | 1
t4 | 1
t5 | 1

我的解释是,每一个时间点都有一个样本值。但结果本身是一个时间序列,我期望有一个标量。

顺便说一句:我知道我可以使用Grafana转换,但不幸的是,我需要一个只使用PromQL的解决方案。

EN

回答 1

Stack Overflow用户

发布于 2022-07-10 19:37:44

只需使用时间函数即可。例如,下面的查询返回名称为instana_metrics的每个时间序列在过去2分钟内的原始样本数

代码语言:javascript
复制
count_over_time(instana_metrics[2m])

注意,Prometheus根据图上的每个点独立计算提供的查询,例如,图上的每个值显示每个匹配的时间序列在2分钟后查找窗口中的原始样本数,并以给定的点结束。

如果在Grafana中的选定时间范围内,每个匹配序列只需要一个值,那么使用以下即时查询:

代码语言:javascript
复制
count_over_time(instana_metrics[$__range])

参见关于这些医生变量的$__range

请参阅关于Grafana中即时查询类型的这些医生

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72896698

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档