Kratos 監(jiān)視接口

2022-04-24 14:10 更新

接口實(shí)現(xiàn)

Kratos 暴露了三種監(jiān)控接口,分別是 Counter, Gauge, Observer。

Counter

type Counter interface {
    With(lvs ...string) Counter
    Inc()
    Add(delta float64)
}

Counter 是最簡單的計(jì)數(shù)器,對外提供了Inc, Add兩個方法。只能用于計(jì)數(shù)的增加。通常用于統(tǒng)計(jì)服務(wù)的錯誤數(shù),請求qps。

Gauge

type Gauge interface {
    With(lvs ...string) Gauge
    Set(value float64)
    Add(delta float64)
    Sub(delta float64)
}

Guage是個狀態(tài)指示器,用于記錄服務(wù)當(dāng)前的狀態(tài),狀態(tài)值可以隨著時間增加或減少。通常用于監(jiān)控服務(wù)當(dāng)前的cpu使用率,內(nèi)存使用量等。

Observer

type Observer interface {
    With(lvs ...string) Observer
    Observe(float64)
}

Observer屬于比較復(fù)雜的監(jiān)控指標(biāo),對比以上兩個提供了更多額外的信息,可以用于觀察統(tǒng)計(jì)總值,數(shù)量以及分位百分比。在Prometheus中,對應(yīng)了Histogram 和Summary的實(shí)現(xiàn)。其中Histogram 直方圖用于記錄不同分桶的數(shù)量。比如不同請求耗時區(qū)間的請求數(shù),用于指示將指標(biāo)保存到了多個分桶,因此Histogram幾乎無開銷。Summary則記錄了不同分位的值,基于概率采樣計(jì)算,比如90% 99% 分位耗時,由于需要進(jìn)行額外的計(jì)算,因此對于服務(wù)有一定的開銷。


以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號