我有一个VM,该VM通常一天要运行几个小时,执行一些作业并报告其状态,其值为0
或1
。我想查询这些作业的最新可用值-显然,当VM关闭时,不会吸收新指标,但是我对此并不在意。
所以问题是:即使很久以前,我如何查询Prometheus摄取的特定指标的最新值?
考虑到指标可以是0
或1
,并且VM通常至少每天报告一次指标,例如,我可以使用类似min_over_time(some_job[24h])!=1
的内容,但是我我对此并非100%满意,因为该查询假设指标是在过去24小时内报告的(可能并非总是如此),并且也不会关心指标的值是否在0
和{{ 1}}。
答案 0 :(得分:0)
这听起来像是Pushgateway的用例,它适用于此类集群级别的批处理作业。让批处理作业在值终止之前推送该值。
我建议按上次成功的时间戳而不是0/1。这样一来,time() - some_job_last_success_seconds > 86400
就可以更容易地发出警报。