簡體   English   中英

PromQL 查詢以檢測新時間序列的創建

[英]PromQL query to detect the creation of new time series

我有一個計數器類型的指標。 對於給定的指標和 label 組合,我需要檢測是否為最后一天創建了新的時間序列。 如果是,查詢應返回 1,否則返回 0 或空。

我使用了以下查詢。

count by(label_1, label_2) count_over_time(My_metric{label_1="v1",label_2="v2"}[1d]) > 0 

這在一定程度上起作用,因為它檢測到新的時間序列,但在創建一天后,它仍然返回 1。

My_metric{label_1="v1",label_2="v2"}

時間序列

count by(label_1, label_2) count_over_time(My_metric{label_1="v1",label_2="v2"}[1d]) > 0 

上面查詢的時間序列

這個時間序列是在 1 月 1 日上午 10 點左右創建的。 從 1 月 1 日上午 10 點到 1 月 2 日上午 10 點,promQL 查詢應該返回 1 和 rest 的時間,它應該返回 0 或為空。 有人可以幫忙嗎? 非常感謝對此的任何幫助。

如果在最后一天沒有與My_metric{label_1="v1",label_2="v2"}系列選擇器匹配的新時間系列,則以下查詢返回 0。 否則返回 1:

count(
  My_metric{label_1="v1",label_2="v2"}
    unless
  (
    My_metric{label_1="v1",label_2="v2"} offset 1d
  )
) >bool 0

該查詢使用以下 PromQL 功能:

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM