promql:计算时间序列的样本

问题描述 投票:0回答:1

对于2分钟的时间窗口,该矢量具有以下结果(我正在使用Grafana探索2分钟的时间):

instana_metrics{aggregation="max", endpoint="mutation addProduct"}

t1 - 3051
t2 - 5347
t3 - 5347
t4 - 4224
t5 - 4224
我需要等效的东西

SELECT Count(*) FROM instana_metrics

5的结果 我能想到的最好的是

count( instana_metrics{aggregation="max", endpoint="mutation addProduct"} ) t1 | 1 t2 | 1 t3 | 1 t4 | 1 t5 | 1

我的解释是,每个时间点的计数为1个样本值。但是结果本身就是一个时间序列,我希望有一个标量。

BTW:我知道我可以为此使用Grafana转换,但不幸的是我只需要一个promql解决方案。
	

just使用

Count_over_time

函数。例如,以下查询返回每个时间序列的最后2分钟中的原始样品数量,名称为

instana_metrics
count counting promql scalar
1个回答
2
投票

count_over_time(instana_metrics[2m]) 注意Prometheus根据图上的每个点独立计算提供的查询,例如图表上的每个值都显示了在2分钟内每个匹配时间序列的原始样本数量,以示给给定点结尾。

如果您在Grafana选定的时间范围内每个匹配系列仅需要一个值,则使用以下即时查询:

count_over_time(instana_metrics[$__range])
请参阅这些文档

关于

$__range

变量。

请参阅这些文档
关于grafana中的即时查询类型。
    

函数count_over_time给出了时间表的最大敏捷。就像我应该看到的时间在时间内增加的那样,但是值显示所有timerange count_over_time的总值(kuber_pod_container_status_status_last_last_last_termination_terned_reson {quach 3小时的查找,这是不正确的。我每小时有60次重新启动,抽样应显示随着时间的流逝的增量计数。


最新问题
© www.soinside.com 2019 - 2025. All rights reserved.