Prometheus時序數據


時序數據,即按照相同時序(time series),以時間維度存儲的連續數據的集合。
Prometheus存儲的時序數據,時序是由Metric以及一組key/value標簽定義的,具有相同的Metric以及key/value(例如http_requests_total{method="POST"})則屬於相同時序。按照某個時序以時間維度采集的數據,稱之為Samples(樣本),其值包含:一個float64值、一個毫秒級的unix時間戳。
 
Prometheus時序數據分為四種類型:
  • Counter
Counter表示收集的數據是按照某個趨勢一直單向增減的,對某兩個時刻的數據求差值即可得到區間數據的增量。
  • Gauge
Gauge表示搜集的數據是瞬時,與時間沒有關系,可以任意變高變低,往往可以用來記錄內存使用率、磁盤使用率等。
  • Histogram
將樣本的值域划分為不同的區間,即不同的bucket
Prometheus的histogram是一種累積直方圖
histogram並不會保存數據采樣點值,只記錄樣本數,且每一個bucket的樣本包含了之前所有bucket 的樣本
    [basename]_bucket{le=“上邊界”}, 這個值為小於等於上邊界的所有采樣點數量
    [basename]_sum,對每個采樣點的值累加和
    [basename]_count,對采樣點的次數累加和
    [basename]_bucket{le=”+Inf”},它的值必須等於 x_count 的值
  • Summary
每個采樣點進行統計,並形成分位圖
summary直接存儲了 quantile 數據,而不是根據統計區間計算出來的。無需像Histogram一樣通過 <basename>_bucket 計算 quantile
[basename]{quantile="0.5"},中位數的值
[basename]_sum,對每個采樣點的值累加和
[basename]_count,對采樣點的次數累加和
 
對每一個實例而言,prometheus按照以下時序來存儲所采集的數據樣本:
up{job="<job-name>", instance="<instance-id>"}: 1 表示該實例正常工作
up{job="<job-name>", instance="<instance-id>"}: 0 表示該實例故障
 
scrape_duration_seconds{job="<job-name>", instance="<instance-id>"} 表示拉取數據的時間間隔
scrape_samples_post_metric_relabeling{job="
<job-name>", instance="<instance-id>"} 表示采用重定義標簽(relabeling)操作后仍然剩余的樣本數
scrape_samples_scraped{job="
<job-name>", instance="<instance-id>"} 表示從該數據源獲取的樣本數

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM