国产精品久久久aaaa,日日干夜夜操天天插,亚洲乱熟女香蕉一区二区三区少妇,99精品国产高清一区二区三区,国产成人精品一区二区色戒,久久久国产精品成人免费,亚洲精品毛片久久久久,99久久婷婷国产综合精品电影,国产一区二区三区任你鲁

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

Prometheus Metric的實踐總結

馬哥Linux運維 ? 來源:馬哥Linux運維 ? 2023-01-06 14:21 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

使用 Promethues 實現應用監控的一些實踐

在這篇文章中我們介紹了如何利用 Prometheus 監控應用。在后續的工作中隨著監控的深入,我們結合自己的經驗和官方文檔總結了一些 Metrics 的實踐。希望這些實踐能給大家提供參考。

確定監控對象

在具體設計 Metrics 之前,首先需要明確需要測量的對象。需要測量的對象應該依據具體的問題背景、需求和需監控的系統本身來確定。

從需求出發

Google 針對大量分布式監控的經驗總結出四個監控的黃金指標,這四個指標對于一般性的監控測量對象都具有較好的參考意義。這四個指標分別為:

延遲:服務請求的時間。

通訊量:監控當前系統的流量,用于衡量服務的容量需求。

錯誤:監控當前系統所有發生的錯誤請求,衡量當前系統錯誤發生的速率。

飽和度:衡量當前服務的飽和度。主要強調最能影響服務狀態的受限制的資源。例如,如果系統主要受內存影響,那就主要關注系統的內存狀態。

以上四種指標,其實是為了滿足四個監控需求:

反映用戶體驗,衡量系統核心性能。如:在線系統的時延,作業計算系統的作業完成時間等。

反映系統的吞吐量。如:請求數,發出和接收的網絡包大小等。

幫助發現和定位故障和問題。如:錯誤計數、調用失敗率等。

反映系統的飽和度和負載。如:系統占用的內存、作業隊列的長度等。

除了以上常規需求,還可根據具體的問題場景,為了排除和發現以前出現過或可能出現的問題,確定相應的測量對象。比如,系統需要經常調用的一個庫的接口可能耗時較長,或偶有失敗,可制定 Metrics 以測量這個接口的時延和失敗數。

從需要監控的系統出發

為了滿足相應的需求,不同系統需要觀測的測量對象也是不同的。在 官方文檔 的最佳實踐中,將需要監控的應用分為了三類:

線上服務系統(Online-serving systems):需對請求做即時的響應,請求發起者會等待響應。如 web 服務器。

離線計算系統(Offline processing):請求發起者不會等待響應,請求的作業通常會耗時較長。如批處理計算框架 Spark 等。

批處理作業(Batch jobs):這類應用通常為一次性的,不會一直運行,運行完成后便會結束運行。如數據分析的 MapReduce 作業。

對于每一類應用其通常情況下測量的對象是不太一樣的。其總結如下:

線上服務系統:主要有請求、出錯的數量,請求的時延等。

線下計算系統:最后開始處理作業的時間,目前正在處理作業的數量,發出了多少 items, 作業隊列的長度等。

批處理作業:最后成功執行的時刻,每個主要 stage 的執行時間,總的耗時,處理的記錄數量等。

除了系統本身,有時還需監控子系統:

使用的庫(Libraries): 調用次數,成功數,出錯數,調用的時延。

日志(Logging):計數每一條寫入的日志,從而可找到每條日志發生的頻率和時間。

Failures: 錯誤計數。

線程池:排隊的請求數,正在使用的線程數,總線程數,耗時,正在處理的任務數等。

緩存:請求數,命中數,總時延等。

選擇 Vector

選用 Vec 的原則:

數據類型類似但資源類型、收集地點等不同

Vec 內數據單位統一

例子:

不同資源對象的請求延遲

不同地域服務器的請求延遲

不同 http 請求錯誤的計數

此外,官方文檔 中建議,對于一個資源對象的不同操作,如 Read/Write、Send/Receive, 應采用不同的 Metric 去記錄,而不要放在一個 Metric 里。原因是監控時一般不會對這兩者做聚合,而是分別去觀測。 不過對于 request 的測量,通常是以 Label 做區分不同的 action。

確定 Label

常見 Label 的選擇有:

resource

region

type

確定 Label 的一個重要原則是:同一維度 Label 的數據是可平均和可加和的,也即單位要統一。如風扇的風速和電壓就不能放在一個 Label 里。

此外,不建議下列做法:

my_metric{label=a} 1 my_metric{label=b} 6 my_metric{label=total} 7

即在 Label 中同時統計了分和總的數據,建議采用 PromQL 在服務器端聚合得到總和的結果。或者用另外的 Metric 去測量總的數據。

命名 Metrics 和 Label

好的命名能夠見名知義,因此命名也是良好設計的一環。

Metric 的命名:

需要符合 pattern: a-zA-Z:

應該包含一個單詞作為前綴,表明這個 Metric 所屬的域。

如:

prometheus_notifications_total

process_cpu_seconds_total

ipamd_request_latency

應該包含一個單位的單位作為后綴,表明這個 Metric 的單位。

如:

http_request_duration_seconds

node_memory_usage_bytes

http_requests_total (for a unit-less accumulating count)

邏輯上與被測量的變量含義相同。

盡量使用基本單位,如 seconds,bytes。而不是 Milliseconds, megabytes。

Label 的命名:

依據選擇的維度命名,如:

region: shenzhen/guangzhou/beijing

owner: user1/user2/user3

stage: extract/transform/load

Buckets 選擇

適宜的 buckets 能使 histogram 的百分位數計算更加準確。

理想情況下,桶會使得數據分布呈階梯狀,即各桶區間內數據個數大致相同。
buckets 的設計可遵從如下經驗:

需要知道數據的大致分布,若事先不知道可先用默認桶 ({.005, .01, .025, .05, .1, .25, .5, 1, 2.5, 5, 10})或 2 倍數桶({1,2,4,8…})觀察數據分布再調整 buckets。

數據分布較密處桶間隔制定的較窄一些,分布稀疏處可制定的較寬一些。

對于多數時延數據,一般具有長尾的特性,較適宜用指數形式的桶(ExponentialBuckets)。

初始桶上界一般覆蓋10%左右的數據,若不關注頭部數據也可以讓初始上界更大一些。

若為了更準確計算特定百分位數,如90%,可在90%的數據處加密分布桶,即減少桶的間隔。

比如我在監控我們某些任務耗時的時候,就是選根據實際情況估算出大致的 bucket 取值,上線后觀察數據和監控再去調整 bucket, 這樣經過幾次調整應該就能調整到比較合適的 bucket。

Grafana 使用技巧

查看所有維度

如果你想知道是否還能按其它維度分組,并快速查看還有哪些維度,可采用以下技巧:在 query 的表達式上只保留指標名稱,不做任何計算,Legend format 也留空。這樣就能顯示出原始的 metric 數據。如下圖所示

70392922-8d89-11ed-bfe3-dac502259ad0.png

標尺聯動

在 Settings 面板中,有一個 Graph Tooltip 設置項,默認使用 Default。

7062b2d8-8d89-11ed-bfe3-dac502259ad0.png

下面將圖形展示工具分別調整為 Shared crosshair 和 Shared Tooltip 看看效果。可以看到標尺能聯動展示了,方便排查問題時確認 2 個指標的關聯性。

將圖形展示工具調整為 Shared Tooltip:

7091a458-8d89-11ed-bfe3-dac502259ad0.png

審核編輯 :李倩

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 測量
    +關注

    關注

    10

    文章

    5636

    瀏覽量

    116725
  • Prometheus
    +關注

    關注

    0

    文章

    36

    瀏覽量

    2054

原文標題:Prometheus Metric 的實踐總結,搞定監控需注意~

文章出處:【微信號:magedu-Linux,微信公眾號:馬哥Linux運維】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    使用Prometheus和Grafana的企業級監控落地實戰

    生產環境跑著幾百臺機器,出了故障全靠人肉巡檢和用戶反饋,這種被動運維的日子我們團隊經歷了兩年。2019年開始全面切換到Prometheus+Grafana體系,到現在穩定運行了五年多,監控覆蓋了主機、容器、中間件、業務指標四個層面,日均采集指標點超過2000萬。
    的頭像 發表于 02-27 10:58 ?147次閱讀

    Prometheus告警規則編寫與Alertmanager通知配置實戰

    監控系統搭完了,指標也采集上來了,但如果沒有告警,等于白搭。我見過不少團隊Prometheus跑得好好的,Grafana大屏也掛在墻上,結果凌晨3點數據庫磁盤寫滿了,第二天早上用戶投訴才發現。監控不閉環,就是擺設。
    的頭像 發表于 02-26 16:35 ?226次閱讀

    使用VictoriaMetrics的Prometheus遠程存儲方案

    Prometheus單機存儲在生產環境跑到一定規模就會碰壁——單節點磁盤容量有限,TSDB默認保留15天數據,想存半年以上的監控數據基本不現實。更麻煩的是Prometheus沒有原生的高可用方案
    的頭像 發表于 02-26 16:30 ?113次閱讀

    安路科技2025年度總結

    2026年2月6日,安路科技2025年度總結大會暨表彰盛典在上海圓滿召開,公司全員齊聚一堂,總結過去,展望未來。會上,公司管理層發表了主題為“擁抱變化,共同成長”的戰略展望。
    的頭像 發表于 02-24 11:25 ?587次閱讀

    【「Altium Designer 25 電路設計精進實踐」閱讀體驗】總體感受

    非常感謝電子發燒友提供的「Altium Designer 25 電路設計精進實踐」讀書機會。因為書到的時候已經放假了,所以現在才拿到書。 這本書是陳之炎老師撰寫的關于Altium
    發表于 02-22 18:06

    【「Altium Designer 25 電路設計精進實踐」閱讀體驗】+本書概覽與內容特點介紹

    ,比較有參考意義。 本書特點:全彩印刷理論結合實踐,前面介紹理論,后面介紹實踐,尤其是后面的SAM V71可以參考自己做一個類似的開發板。 總結:本書基于AD25介紹電子電路設計,介紹了一些貼近工程
    發表于 02-14 15:56

    2024年度技術總結——MCU與MEMS和TOF應用實踐

    認識到,技術的進步不僅僅是理論上的突破,更需要在客戶應用場景中進行實踐和驗證。技術不應僅限于閉門造車,它的真正價值是在實際項目中落地,并為產品賦能,從而解決現實世界中的挑戰。 通過對客戶項目
    的頭像 發表于 12-22 15:04 ?1156次閱讀
    2024年度技術<b class='flag-5'>總結</b>——MCU與MEMS和TOF應用<b class='flag-5'>實踐</b>

    國星光電入選“2025年上市公司可持續發展優秀實踐案例”

    兩年獲此殊榮。 中國上市公司協會自2021年起開展上市公司可持續發展(ESG)實踐案例征集,旨在總結推廣優秀經驗,推動上市公司對標對表、互學互鑒,提升可持續發展價值。 近年來,國星光電按照廣東省國資委和廣晟控股集團的決策部署和工作要求
    的頭像 發表于 11-20 19:07 ?3958次閱讀

    Zabbix與Prometheus運維監控系統的對比

    在當今云原生和微服務架構盛行的時代,監控系統已成為運維工程師不可或缺的核心工具。面對市場上眾多監控解決方案,Zabbix和Prometheus作為兩大主流選擇,各自擁有獨特的優勢和適用場景。本文將從架構設計、性能表現、功能特性、運維成本等多個維度進行深入對比,為你的監控系統選型提供專業指導。
    的頭像 發表于 09-18 14:57 ?649次閱讀

    常用PromQL查詢案例總結

    在云原生時代,Prometheus已經成為監控領域的事實標準。作為一名資深運維工程師,我見過太多團隊在PromQL查詢上踩坑,也見過太多因為監控不到位導致的生產事故。今天分享10個實戰中最常用的PromQL查詢案例,每一個都是血淚經驗的總結
    的頭像 發表于 09-18 14:54 ?719次閱讀

    如何構建高可用Prometheus監控體系

    在云原生時代,傳統監控工具已經無法滿足微服務架構的復雜需求。Prometheus憑借其Pull模式、多維數據模型和強大的查詢語言PromQL,成為了CNCF畢業項目中的監控標桿。
    的頭像 發表于 08-01 09:10 ?874次閱讀

    【「Yocto項目實戰教程:高效定制嵌入式Linux系統」閱讀體驗】01總結實踐記錄

    ,運行一下,輸入密碼之后就跑出來了界面了: 選擇terminal看看效果: 看一下文件管理器: 附上書本內容: 四 總結 這本書還是非常不錯的,關于Yocto的介紹和首次實踐也都成功了,這里
    發表于 06-30 11:38

    相關協議信號總結

    電子發燒友網站提供《相關協議信號總結.xlsx》資料免費下載
    發表于 06-25 15:34 ?5次下載

    詳解Prometheus的數據類型

    對于 Prometheus 生態的監控系統,PromQL 是必備技能,本文著重點講解這個查詢語言,摻雜一些生產實踐場景,希望對你有所幫助。
    的頭像 發表于 05-13 09:50 ?1466次閱讀
    詳解<b class='flag-5'>Prometheus</b>的數據類型

    使用Prometheus與Grafana實現MindIE服務可視化監控功能

    在 MindIE 服務化運行過程中,為了及時掌握服務的運行狀態、性能表現以及發現潛在問題,提供了服務監控指標查詢接口(普羅 (Prometheus) 格式)。該接口能夠幫助開發者和運維人員獲取豐富的服務監控指標數據,為優化服務配置、保障服務質量提供有力支持。
    的頭像 發表于 04-21 11:48 ?2268次閱讀
    使用<b class='flag-5'>Prometheus</b>與Grafana實現MindIE服務可視化監控功能