2016-07-29 26 views
5

我們用sum(rate(my_counter_total[1m]))sum(irate(my_counter_total[20s]))繪製快速計數器。如果你能在最近的幾秒鐘內總是發現變化,那麼第二個是可取的。用普羅米修斯和格拉法納繪製慢速計數器

但是,您如何繪製每隔幾分鐘甚至幾小時只有一些增量的慢速計數器?具有0.0013232/s的值不是非常人性化的。

比方說,我想說明有多少用戶註冊了我們的服務(我們預計每小時會有幾次註冊)。什麼是合理的查詢?

我們目前使用下面的曲線圖,在grafana:

  • 查詢:3600 * sum(rate(signup_total[1h]))
  • 步驟:3600
  • 分辨率:1/1

Slow counter setup

是這合理嗎?

我仍試圖瞭解所有這些參數如何共同繪製圖。有人可以解釋grafana中的範圍選擇器([10m]),rate()irate()函數,StepResolution設置如何相互影響?

回答

2

這是一個正確的方法來做到這一點。您也可以使用increase()這是句法糖,以這種方式使用rate()

有人可以解釋如何在範圍選擇

這僅由普羅米修斯,並指出哪些數據上工作。

grafana中的Step and Resolution設置會相互影響嗎?

這是用在格拉法納方面,它會影響從普羅米修斯請求多少時間片。

這些設置不會直接相互影響。然而,分辨率應該小於範圍,否則你會欠採樣並錯過信息。

+0

我仍然很難把所有東西放在一起。對於每分鐘有一些增量的計數器,我會使用'sum(增加(my_counter_total [1m]))'來顯示比率/ m。將grafana中的步驟設置爲1m並將分辨率設置爲1/1時,此功能效果最佳。因此,每個繪製的值都對應每分鐘的出現次數。但是,當您選擇一個較長的時間框架(30d)時,該圖需要很長時間才能加載,因爲它需要多個1m的步長。 將步驟設置爲自動(將其保留爲空)可用於值小於1m的小時間範圍。如果該步驟例如獲得10米的價值已經沒有意義了。 – James

+1

是的,發生了。我建議堅持使用rate(),以便每秒都保持一致。 https://github.com/grafana/grafana/pull/4257應該改善這一點。 –

+0

你提到的公關似乎正是這個解決方案!現在我們會按照每秒鐘的速度去做... – James