簡體   English   中英

在Netflix伺服中制定分鍾速率指標

[英]Making a Minute Rate Metric in Netflix Servo

我想將StepCounter從基於秒的速率轉換為每分鍾速率(我們有一台每分鍾運行一次的監視器)。

當我嘗試將輪詢從每秒1次切換到每60秒一次時,它將采用增量值並將其除以60並創建每秒速率。

任何人都知道如何通過Netflix Servo軟件包公開JMX值來代替60s指標? 有CounterToRateMetricTransform,但沒有關於如何將Counter度量轉換為Rate的示例。

StepCounter是一個單獨的度量標准,但CounterToRateMetricTransform應用於MetricObserver,並返回一個新的觀察者,該觀察者觀察轉換為率的所有計數器

例如,創建一個觀察者,將計數器視為速率並將其添加到可輪詢的任務中

MetricObserver observer = new CloudWatchMetricObserver(...) // existing observer
MetricObserver transformedObserver = new CounterToRateMetricTransform(observer, 60, TimeUnit.SECONDS);
PollRunnable task = new PollRunnable(..., Immutable.listOf(transformedObserver));

不幸的是,此變換還返回每秒的速率(請參閱CounterToRateMetricTransform.computeRate)

就我所見,你無法通過現有的庫獲得每分鍾的速率,你需要實現自己的度量(如StepCounter)或你自己的觀察者轉換(如CounterToRateMetricTransform),具體取決於你的用例。

最好的方法可能只是采用每秒速率並在監控系統中乘以60而不是更改報告

暫無
暫無

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

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