You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

PromQL查询当日0点eseal_num_total指标报错,求正确写法

PromQL查询当日0点指标值的问题解答

语法错误原因

PromQL里的@时间定位符有严格语法要求:它后面必须跟固定的数值时间戳,不能直接写动态计算的表达式(比如你写的time()-(time()+28800)%86400这种实时运算的式子),因为PromQL不支持在@这个位置解析执行表达式,只能识别明确的常量值。

正确的查询写法

方法1:先算时间戳再填值

先单独执行下面的表达式,算出东八区当日0点的时间戳:

time() - (time() + 28800) % 86400

得到具体数值后(比如返回1717209600),把这个数直接放到@后面就行:

eseal_num_total @ 1717209600

方法2:动态适配每日0点(无需手动算时间戳)

如果想不用每次手动计算时间戳,直接动态获取当日0点的数值,可以用first_over_time结合时间范围:

first_over_time(eseal_num_total[1d])

这个表达式会取当日0点到当前时间的所有采样点里的第一个值,也就是你要的当日0点的指标数值。如果你的指标是按日更新的单点数据,也可以用last_over_time(eseal_num_total[1d] offset -1d),它会取前一天0点到当日0点区间的最后一个值,同样是当日0点的数值。

内容的提问来源于stack exchange,提问作者qisejiutian

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.02 22:15:54