2016-11-21 107 views
3

我有一個度量標準varnish_main_client_req類型的計數器,我想設置一個警報,觸發如果請求的比例下降/提高一定量的給定時間(例如「請求數量在最近2分鐘內發生偏差!」)。從普羅米修斯查詢返回值生成範圍向量

使用deriv()函數應該比比較相對值要好得多,但它只能用於量表。是否有可能轉換一個不斷增加的度量標準。與額定度量aka相反。測量?

查詢deriv(rate(varnish_main_client_req[2m])[5m])

期望: 普羅米修斯計算在過去2分鐘的客戶機請求的速率和在過去的5分鐘返回得到的值的衍生物。

實際結果

「錯誤」: 「在炭48解析錯誤:範圍指定必須由指標選擇前面 ,但遵循* promql.Call代替」

Recording rules可能是一個選項,但它感覺像一個應該適用於查詢的東西的廉價解決方法:

my_gauge_metric = rate(some_counter_metric[2m])

回答

2

是的,您需要爲此使用錄製規則。

Prometheus計算過去2分鐘內客戶請求的比率,並返回過去5分鐘內得到的值的導數。

這裏存在問題 - 普羅米修斯應該在多長時間合成這些數據?

+0

每次執行查詢,我想。我雖然我可以用與使用即時矢量相同的方式來處理函數的返回值。 我會嘗試錄製規則,感謝您的幫助。 – AaL