问题描述
在范围向量上应用 avg() 是什么意思,例如:
avg(meric_name[1d])
根据文档 here,它仅对即时向量进行操作。 metric_name[1d] 返回一个范围向量。此查询仍然在范围向量上运行并返回结果,而没有任何错误的抱怨。
解决方法
这正确地返回了一个解析错误:
PdfSigner.signDeferred
所以我怀疑您正在运行不同的查询。
,正如 Brian 已经指出的那样,avg(m[d])
查询在 Prometheus 中不起作用,因为这是有效的 MetricsQL 查询并且是无效的 PromQL 查询。
VictoriaMetrics 自动将 avg(m[d])
查询转换为 avg(last_over_time(m[d]))
。 last_over_time(m[d])
为每个返回的数据点返回 m
在 d
持续时间内的最后一个原始值。然后 avg(...)
计算结果时间序列的平均值。
如果这些差距超过传递给 /api/v1/query_range 的 last_over_time()
值,step
函数可用于弥补时间序列数据中的差距。
在 MetricsQL docs 查看有关 last_over_time()
函数的更多详细信息。