【prometheus】入門+實習需求實戰

prometheus官方教程

說明:

感冒了,寫點總結不浪費時間,聲明不會扯出來任何的私有代碼,畢竟要保密,只會講prometheus的官方有的,以及那些開源的代碼方法,例如prometheus客戶端代方法,代碼

工作中遇到了metrics相關任務,之前沒有學過,趁著任務需求,就學了一點

prometheus 有四種指標的,但是沒有一種指標類型可以是數組類型
而我的需求就是很需要這個數組類型

但是這四種指標類型沒有數組類型是很合理的,畢竟數組怎么當指標呢?

不過話說回來,即便當前的任務對我很難(畢竟一無所知對prometheus),但是該完成任務還要完成任務,學就完事了

任務:

給指標添加——事項id,為了dis

簡單分析一下不難發現,我們目前的指標有
個人效能——就是事項,例如bug數量,需求數量,任務數量等
代碼貢獻——例如代碼增加/減少行數,文件修改數目,commit個數
項目報表——項目緯度的功能點,bug,task,requirement 個數等

那么以個人效能來說,單位是人,這個人有什么指標呢?就是例如有一個bug總數,這個指標對應的事項id是什么?
忘了說了事項——就是需求(requirement),任務(task),缺陷(bug)
所以這個bug總數指標對應的事項id不可能是一個,而是很多個,因為bug總數,代表的是所有bug,每個bug都是一個事項,都有一個事項id,所以,這個bug總數是幾,他對應的事項id就有幾個,就是一個id數組

首先先吐槽一下,這個任務真的挺雞肋的,為了dis,就是比較
但是又不得不說,他有難度,是個男點,畢竟四個指標類型都沒有數組

解決方案:

方案一:直接寫一個prometheus對象,collect出來指標——id數組,返回,結果返回方法沒有這種指標類型

//注冊一個指標對象
registry := prometheus.NewRegistry()
registry.MustRegister(對象(例如a))func NewMetricWithTimestamp(t time.Time, m Metric) Metric
prometheus.NewMetricWithTimestamp(t time.Time,MustNewConstMetric(desc *Desc, valueType ValueType, value float64, labelValues ...string) Metric,
)
// 對就是 MustNewConstMetric 方法里的第三個參數只能接受float64類型的
// 另外就是去找了其他類型的,都沒有找到數組類型的a.Register.Add(http.MethodGet, "/url", func(w http.ResponseWriter, r *http.Request) {promhttp.HandlerFor(registry, promhttp.HandlerOpts{}).ServeHTTP(w, r)
})
//當調用了 /url 接口,就會走這個http請求,轉發到promhttp去調用collect,但是我并沒有看出來是如何返回指標的,應該是NewMetricWithTimestamp 這個函數有什么操作
//但是源碼只有一行:Collect(chan<- Metric),也不知道嗯干嘛的,但總之是返回了指標數據

所以方案一不行了…

方案二:
還在構建思索中
目前大體思路是這樣:
能否從概念入手,指標名作為key,本來的value是float64類型的一個值,但在這中間還有一個label呢!,記錄的是這個人的信息,例如人名,id,項目名,項目id,組織id。
而我在label中加一個id數組,這樣就不必是指標類型了
把label中的id數組,想像成value即可,畢竟這整體還是一個指標,是一個完整的
接著在另一個項目就可以去拿到這指標,處理一下,做一下關聯,存儲到clickhouse,給項目a用

哦對了,講一下背景:
整體原本的思路和邏輯是這樣的,項目a,計算采集指標放在etcd,放的是每天的指標,同時有暴露接口能給項目b調用

項目a通過查詢clickhouse拿到當前的指標

我曾經疑我們的mysql有幾個?有一個,那怎么主從同步,怎么解決高并發,數據庫崩了等等問題,然后看到了rds,原來用的是阿里云的rds云數據庫服務啊,專業的事交給了專業的人去做了,clickhouse有四個

后續有進展持續更新

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/207489.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/207489.shtml
英文地址,請注明出處:http://en.pswp.cn/news/207489.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

QML中Dialog獲取close與open狀態

1.新建MyDialog.qml import QtQuick 2.15import QtQuick.Dialogs 1.2Dialog {id: rootvisible: falsetitle: qsTr("彈出對話框")width: 250height: 200} 2.main.qml中調用MyDialog import QtQuick 2.15 import QtQuick.Window 2.15 import QtQuick.Controls 2.15…

JS原生實現瀏覽器滾動條滾動側邊欄高亮響應

目錄 演示 ?編輯 需求 代碼 css html script 代碼解釋 1、獲取所有link-content 2、定義一個rectContent數組&#xff0c;然后循環allContents調用getClientRects()[0]獲取每個link-content元素與瀏覽器視口的關系 3、為數組追加link-content&#xff0c;用于設置側…

軟件設計師——面向對象技術(一)

&#x1f4d1;前言 本文主要是【面向對象技術】——軟件設計師—面向對象技術的文章&#xff0c;如果有什么需要改進的地方還請大佬指出?? &#x1f3ac;作者簡介&#xff1a;大家好&#xff0c;我是聽風與他&#x1f947; ??博客首頁&#xff1a;CSDN主頁聽風與他 &#…

C++學習筆記(十一)

一、類和對象 C面向對象的三大特性為&#xff1a;封裝、繼承、多態 C認為萬事萬物皆為對象&#xff0c;對象上有其屬性和行為 例如&#xff1a;人可以作為對象&#xff0c;屬性有姓名、年齡、身高......&#xff0c;行為有走、吃、睡覺 車也可以作為對象&#xff0c;屬性有輪…

官網IDM下載和安裝的詳細步驟

目錄 一、IDM是什么 二、下載安裝 三、解決下載超時的問題 四、谷歌瀏覽器打開IDM插件 谷歌瀏覽器下載官網&#x1f447; 五、測試 六、資源包獲取 一、IDM是什么 IDM&#xff08;internet download manager&#xff09;是一個互聯網下載工具插件&#xff0c;常見于用…

要求CHATGPT高質量回答的藝術:提示工程技術的完整指南—第 29 章:ChatGPT 插件

要求CHATGPT高質量回答的藝術&#xff1a;提示工程技術的完整指南—第 29 章&#xff1a;ChatGPT 插件 這是 ChatGPT 的另一個圣杯。它將徹底改變你使用 ChatGPT 的方式。ChatGPT 插件本質上是將 ChatGPT 的功能擴展到文本輸出之外。它允許你上傳圖片、視頻、音頻和 CSV 文件&…

資深IT經理分享如何選擇商用遠控軟件三:評估產品方案匹配度

作為企業必要的IT管理和遠程辦公工具&#xff0c;遠程控制解決方案的挑選和采購是需要IT部門慎重考慮的。 對于具體如何在諸多產品中選擇合適的商用遠程控制解決方案&#xff0c;此前我們就分享了一位資深IT經理的相關經驗&#xff0c;目前已經涵蓋初期的業務需求調研&#xf…

【ESP32 IDF】ESP32移植u8g2庫,實現oled界面顯示

ESP32移植u8g2庫&#xff0c;實現oled界面顯示 1. 簡單描述2. 環境準備1. 硬件準備2. 軟件準備 3. IIC屏幕 【基于 ssd1362 256*64 】4. SPI屏幕 【基于 ssd1306 128*32】 1. 簡單描述 開發方式為 IDF5.0參考連接為 iic基于esp-idf移植使用u8g2 spi基于esp-idf移植使用u8g2 …

探索創意無限的Photoshop CC 2020Mac/Win版

作為一款功能強大的圖像處理軟件&#xff0c;Photoshop CC 2020&#xff08;簡稱PS 2020&#xff09;在全球范圍內備受設計師、攝影師和藝術家的喜愛和推崇。它不僅為用戶提供了豐富多樣的工具和功能&#xff0c;還不斷推出新的創意特效和改進的功能&#xff0c;讓用戶的創意無…

【數據結構和算法】擁有最多糖果的孩子

其他系列文章導航 Java基礎合集數據結構與算法合集 設計模式合集 多線程合集 分布式合集 ES合集 文章目錄 其他系列文章導航 文章目錄 前言 一、題目描述 二、題解 三、代碼 四、復雜度分析 前言 這是力扣的1431題&#xff0c;難度為簡單&#xff0c;解題方案有很多種&…

C# Solidworks二次開發:選擇管理器相關的API介紹

今天在講述主要內容之前&#xff0c;先說一個不太相關的問題。 我之前在其他文章中看到有一些朋友在問為什么獲取到的點位數據需要乘以1000進行單位轉換&#xff0c;其實原因是這樣的&#xff0c;在所有使用的API中如果沒有特殊說明&#xff0c;所有的長度單位都是米&#xff…

蘋果Vision Pro即將量產

據界面新聞消息&#xff0c;蘋果公司將在今年12月正式量產第一代MR&#xff08;混合現實&#xff09;產品Vision Pro。蘋果公司對Vision Pro寄予了厚望&#xff0c;預計首批備貨40萬臺左右&#xff0c;2024年的銷量目標是100萬臺&#xff0c;第三年達到1000萬臺。 蘋果的供應…

springboot + thymeleaf + layui 初嘗試

一、背景 公司運營的同事有個任務&#xff0c;提供一個數據文件給我&#xff0c;然后從數據庫中找出對應的加密串再導出來給他。這個活不算是很難&#xff0c;但時不時就會有需求。 同事給我的文件有時是給excel表格&#xff0c;每一行有4列&#xff0c;逗號隔開&#xff0c;…

編譯和使用WPS-ghrsst-to-intermediate生成SST

一、下載 V1.0 https://github.com/bbrashers/WPS-ghrsst-to-intermediate/tree/masterV1.5&#xff08;使用過程報錯&#xff0c;原因不詳&#xff0c;能正常使用的麻煩告知一下方法&#xff09; https://github.com/dmitryale/WPS-ghrsst-to-intermediate二、修改makefile…

【CVE 復現】CVE-2022-0185 fsconfig之整數溢出

影響版本&#xff1a;Linux-v5.1~v5.16.2 測試版本&#xff1a;Linux-5.11.22&#xff0c;由于懶得搞環境&#xff0c;所以直接用的 bsauce 大佬提供的 測試環境 看看 patch&#xff1a; diff --git a/fs/fs_context.c b/fs/fs_context.c index b7e43a780a625b..24ce12f0db32…

ResNeXt(2017)

文章目錄 Abstract1. Introductionformer workour work 2. Related Work多分支卷積網絡分組卷積壓縮卷積網絡Ensembling 3. Method3.1. Template3.2. Revisiting Simple Neurons3.3. Aggregated Transformations3.4. Model Capacity 4. Experiment 原文地址 源代碼 Abstract 我…

【python】vscode中選擇虛擬環境venv

vscode 怎么指定 python venv&#xff1f; 在VSCode中選擇Python解釋器&#xff1a; 打開命令面板&#xff1a;按下 CtrlShiftP&#xff08;Windows/Linux&#xff09;或 CmdShiftP&#xff08;Mac&#xff09;。在命令面板中&#xff0c;鍵入 “Python: Select Interpreter”…

14.Java程序設計-基于Springboot的高校社團管理系統設計與實現

摘要 隨著高校社團活動的不斷豐富和社團數量的逐漸增加&#xff0c;高校社團管理面臨著日益復雜的挑戰。為了提高社團管理的效率和透明度&#xff0c;本研究基于Spring Boot框架設計并實現了一套高校社團管理系統。該系統旨在整合社團創建、成員管理、活動發布等多個功能&…

水位線和窗口

水位線特點 插入到數據流中的一個標記&#xff0c;可以認為是一個特殊的數據主要內容是一個時間戳水位線是基于數據的時間戳生成的&#xff0c;即事件時間水位線必須單調遞增水位線可以通過設置延遲&#xff0c;來保證正確處理亂序數據一個水位線&#xff0c;表示事件時間已經…

[FPGA 學習記錄] 數碼管動態顯示

數碼管動態顯示 文章目錄 1 理論學習1.1 數碼管動態掃描顯示原理 2 實戰演練2.1 實驗目標2.2 程序設計2.2.1 框圖繪制2.2.2 數據生成模塊 data_gen2.2.2.1 波形繪制2.2.2.2 代碼編寫2.2.2.3 代碼編譯2.2.2.4 邏輯仿真2.2.2.4.1 仿真代碼編寫2.2.2.4.2 仿真代碼編譯2.2.2.4.3 波…