如何在 PromQL 中获得两个指标中的最小值?

Pau*_*ter 5 prometheus promql

我正在寻找类似于 SQL 的 LEAST() 函数的东西。
由于存在二元运算符(以及明确定义的匹配行为),人们会期望也会有 min/max,但找不到这样的函数。

我知道这可以使用正则表达式(即min(__name__=~"a|b"))来实现,但希望尽可能避免此类黑客攻击。

Ali*_*ean 5

我很确定这是最有效的方法。如果你想避免使用正则表达式,你可以写成:

a < b or b
Run Code Online (Sandbox Code Playgroud)

但以这种方式计算可能更昂贵。(当然,除非你使用的记录规则,而不是min(a)min(b)直接,甚至可以呢。你只需要标杆它自己。)

  • 为什么`a &lt; b` 返回a 而不是布尔值? (2认同)