我有一个布尔度量(也就是说,samples只是两个整数中的一个
0
1
)已调用
my_boolean_metric
. 它有各种标签,包括一个标签
outcome
在价值观范围内
{"success", "failure"}
. 我正在尝试一个小数查询,该查询应始终返回介于
0个
1个
包容的。
分子查询返回
我的布尔度量
与给定标签匹配的时间序列,或
0个
如果没有这样的时间序列。
(count(my_boolean_metric{app="abc", team=~"foo", instance=~"bar", outcome="success"}) or (1 - absent(my_boolean_metric{app="abc", team=~"nirvana", instance=~"bar", outcome="success"})))
返回的值是介于
0个
n
包容的。
我的布尔度量
与给定标签匹配的时间序列,与分子查询不同,它不关心“结果”标签。
count(my_boolean_metric{app="abc", team=~"foo", instance=~"bar"})
这个值总是整数
.
null
(即在Prometheus/Thanos用户界面中“找不到数据点”),即使每个单独测试的查询返回一个整数。
(count(my_boolean_metric{app="abc", team=~"foo", instance=~"bar", outcome="success"}) or (1 - absent(my_boolean_metric{app="abc", team=~"foo", instance=~"bar", outcome="success"}))) / count(my_boolean_metric{app="abc", team=~"foo", instance=~"bar"})
(count(my_boolean_metric{app="abc", team=~"foo", instance=~"bar", outcome="success"}) or (1 - absent(my_boolean_metric{app="abc", team=~"foo", instance=~"bar", outcome="success"}))) / 9
我的分数查询有什么问题?