当前位置: 首页 > 知识库问答 >
问题:

PromQL查询之间的差异

韦叶秋
2023-03-14

我刚开始使用普罗米修斯,我正在尝试理解一些事情。

我有一个Java的web应用程序,它公开了一个叫做“my_counter”的计数器。

下面的查询有什么区别?

sum(increase(my_counter[1m]))

sum(increase(my_counter[3m]))

如果我在1小时的相同时间间隔内运行这些查询,为什么两个查询返回不同的结果?

我试图实现的是看看计数器在一个可配置的时间段内增加了多少。

多谢了。

附注。我实际上使用Grafana来运行查询并选择时间范围。

共有1个答案

刁远
2023-03-14

我假设“1小时的相同时间间隔”意味着在运行所呈现的查询时,已经从时间范围控制面板中选择了完全相同的小时。

您的查询之间的区别在于它们查看的是不同的时间范围。第一个检查的是my_counter在最近1分钟的时间段内增加了多少,第二个检查的是my_counter在最近3分钟的时间段内增加了多少。

时间和计数器值的示例:

01:20:00 => my_counter: 0
01:21:00 => my_counter: 1
01:22:00 => my_counter: 2
01:23:00 => my_counter: 2
01:23:45 => my_counter: 4 (This is the moment of my_counter examination. Notice the time.)
  • 在01:23:45,第一个查询将查看01:22:45和01:23:45之间的1分钟时间范围,并将显示大约2的增加。
  • 同时,第二个查询将查看从01:20:45到01:23:45的3分钟期间,并将显示大约4的增加(因为三分钟前01:20:45时MY_COUNTER的值仍然是0)。

同样的事情发生在你在格拉法纳看到的每一个数据点上。增加查询是外推的,以覆盖全时范围,这意味着您也可以看到非INGETER值。在这里您可以找到关于增加查询功能的实际文档。

 类似资料:
  • 我计划使用NodeJS api查询大量的数据。使用流api(https://cloud.google.com/nodejs/docs/reference/firestore/0.13.x/Query?#stream)代替常规的查询获取(https://cloud.google.com/nodejs/docs/reference/firestore/0.13.x/Query?#get)有什么好处吗?

  • 问题内容: 我有两个我以为是同一意思的查询,但是我一直得到不同的结果,我希望有人可以解释这些差异如何: 1。 2。 查询的重点是查找表1中的行和val = 0而不是表2中的行。 我也使用sql server 2008,但是我怀疑这是否重要。 问题答案: 在考虑左联接时,应将它们视为具有3个概念阶段。 应用联接过滤器 左侧的行又被添加回 应用where子句。 然后,您将看到为什么得到不同结果的原因。

  • 我有一个度量(量规),它有标签,该标签设置为模块的名称。模块在成功执行“更新”(无论它是什么意思)后,现在将其设置为UTC。其中一个模块(称为“main”)必须在任何其他模块更新后的10分钟内执行更新。 尝试#1从“主要”指标中提取所有其他指标的最大值: 它部分有效。在“其他”指标已更新,但“主要”指标尚未更新的时间段内,它会失败: 尝试#2 选择具有10分钟偏移量的“其他”度量,因此我们总是将“

  • 问题内容: 我有一列的数据像 我需要编写一个SQL查询/过程,这将有助于我获取日期之间差异的平均值。对于上面的示例,它将是 (19 + 8 + 10)/3=12.33。 请提供帮助。 在此先感谢Geetha 问题答案: 我不知道您的RDBMS,但这是来自SQL Server。另外,您的计算之一是错误的-02/09/2011-13/08/2011是20,而不是19。 产生的结果是12.667:(20

  • 我想查询日期范围内的elasticsearch文档。我现在有两个选择,都很适合我。我已经测试了他们两个。1.范围查询2。距离滤波器 因为我现在有一个小数据集,所以无法测试它们的性能。这两者有什么区别?哪一种方法可以更快地检索文档和响应?

  • null 使用first collection,我不确定如何查询以在数组中的对象之间找到不同的RNAME。使用第二个集合。当我使用SQL编辑器时,distinct查询可以工作,但不确定如何将其放在存储过程中。 RNAME的不同值