日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > windows >内容正文

windows

监控系统简介:使用 Prometheus 与 Grafana

發布時間:2023/12/4 windows 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 监控系统简介:使用 Prometheus 与 Grafana 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

注:本文雖以 Docker 進行演示,但 Docker 并不是必須的,相關軟件也可以直接安裝到計算機上

背景

如果我們是Web應用的開發者,會對響應時間、接口的穩定性等比較敏感,在站點尚未部署到生產環境時,我們有充足的時間來進行調試、分析哪些接口需要優化。但當應用發布后,想要繼續跟蹤,可能需要通過日志記錄請求和響應時間、記錄響應狀態碼等,然后通過其它工具進行分析外,或是與其它一些分析工具進行集成。

另外現在十分流行的大屏:比如最近曝光的12306監控中心,大屏上顯示出的當日售出車票數量、移動端和Web端訂票比例、線路熱度等信息;還有每年雙十一,各大電商的大屏顯示出交易總金額、熱賣榜等等。

可以發現,上面列出的各點皆為指標:響應時間、成功率等我們可以理解為技術指標,當日售出車票數量、交易總金額等則是業務指標。當我們定義好指標后,需要有收集這些指標的方式,我們采用監控的方式來采集數據。當然,若是某些值超出了閾值,還需要及時發出警報,但這不在本文的討論范圍內了。最后再將監控到的內容進行展示(可視化),就需要用到本文的兩個主角 —— Prometheus 和 Grafana。

Prometheus

Prometheus is an open-source systems monitoring and alerting toolkit

--?Prometheus Overview


Prometheus 是一款開源的監控和警報工具包

—— 譯自?Prometheus Overview

為什么選擇 Prometheus

Prometheus 的幾大特點:

  • 多維數據模型,時間序列數據由指標名稱和鍵/值對標識

  • 提供能在多維度上靈活查詢的 PromQL 語言

  • 不依賴分布式存儲,單服務器節點自治(single server nodes are autonomous)

  • 基于 HTTP PULL(拉取)的方式采集時序數據

  • 可通過中間網關推送時序數據

  • 可通過服務發現或靜態配置要采集的目標服務器

  • 支持多種圖表和儀表盤

相比 InfluxDB 等時序數據庫,Prometheus 內置了時序、監控和通知等功能。

安裝Exporter和Prometheus

首先安裝 Exporter,Exporter 將監控的各種指標以 HTTP 的方式暴露出來。這里通過 Docker 來安裝和運行

docker run -d -p 9100:9100 prom/node-exporter

然后就能通過 http://localhost:9100 來訪問它,點擊下方的?Metrics?鏈接,頁面上就會將相關指標以文本的形式展示出來。

安裝 Prometheus 前需要先將配置文件準備好,新建一個?prometheus.yml?文件

global:scrape_interval: 15sscrape_configs:- job_name: prometheusstatic_configs:- targets: ['localhost:9090']labels:instance: prometheus- job_name: node_exporterstatic_configs:- targets: ['10.0.0.150:9100']labels:instance: node_exporter

scrape_interval?為抓取間隔時間,下面配置了兩個 job,并以?static_configs?的方式配置了兩個目標:?localhost:9090?(后面要安裝的 Prometheus,意思是監控自己)和?10.0.0.150:9100(監控 node_exporter。注意,這里的 10.0.0.150 是計算機的內網 IP,請根據實際情況修改)

接下來安裝 Prometheus,因為?prometheus.yml?配置文件需要映射到 Docker 容器中,記得把硬盤設置為共享

docker run -d -p 9090:9090 -v "D:\docker\prometheus\prometheus.yml:/etc/prometheus/prometheus.yml" --name prometheus prom/prometheus

通過瀏覽器訪問 http://localhost:9090 就能訪問 Prometheus 了,我們先看一下監控的目標是否已經上線,訪問 http://localhost:9090/targets 應該能看到 node_exporter 和 prometheus 兩個目標。State 是?Up?表示已經上線,如果是?Unknown?可以稍等一會兒再刷新。Labels 部分顯示了配置文件中配置的 job 以及 instance,后面查詢的時候會用到。

當到了抓取的時間,Prometheus 就會去訪問目標的 /metrics 頁面將相關指標采集并儲存。

指標類型

Prometheus 提供了四種指標類型

  • Counter?計數器,只增不減,重啟后清零??捎糜谟涗浾埱髷盗俊⒁淹瓿扇蝿盏臄盗?、錯誤數量等。

  • Gauge?儀表盤,可增可減??捎糜谟涗洰斍皽囟?、當前內存占用值等。

  • Histogram?直方圖

  • Summary?摘要

關于直方圖和摘要,都用于統計和分析樣本的分布情況,這里引用?prometheus-book?中關于它們的介紹:

在大多數情況下人們都傾向于使用某些量化指標的平均值,例如CPU的平均使用率、頁面的平均響應時間。這種方式的問題很明顯,以系統API調用的平均響應時間為例:如果大多數API請求都維持在100ms的響應時間范圍內,而個別請求的響應時間需要5s,那么就會導致某些WEB頁面的響應時間落到中位數的情況,而這種現象被稱為長尾問題。


為了區分是平均的慢還是長尾的慢,最簡單的方式就是按照請求延遲的范圍進行分組。例如,統計延遲在0~10ms之間的請求數有多少而10~20ms之間的請求數又有多少。通過這種方式可以快速分析系統慢的原因。Histogram和Summary都是為了能夠解決這樣問題的存在,通過Histogram和Summary類型的監控指標,我們可以快速了解監控樣本的分布情況。


——?prometheus-book?使用Histogram和Summary分析數據分布情況

之前我們訪問過 http://localhost:9100/metrics 指標頁面,節選如下:

# HELP promhttp_metric_handler_requests_total Total number of scrapes by HTTP status code. # TYPE promhttp_metric_handler_requests_total counter promhttp_metric_handler_requests_total{code="200"} 162 promhttp_metric_handler_requests_total{code="500"} 0 promhttp_metric_handler_requests_total{code="503"} 0

# TYPE?一行末尾體現了指標類型,非?#?開頭的行內容為:指標名稱、標簽(花括號內的部分)和樣本值。Prometheus 以時間序列的方式儲存數據,即每個樣本是按照時間順序儲存的,在 Prometheus 儲存的這些樣本內容中包含了:指標,時間戳及樣本值。

PromQL

PromQL 是 Prometheus 的查詢語言,我們訪問 http://localhost:9090 時能看到查詢頁面。在?Expression?中輸入

promhttp_metric_handler_requests_total

并按下回車,可以看到這樣的結果,這段 PromQL 將該指標的指標和樣本值進行了返回

因為?node_exporter?和?prometheus?都提供了名為?promhttp_metric_handler_requests_total?的指標,若想只看?node_exporter?的該指標,則在 PromQL 中加上花括號來過濾 Labels 即可:

promhttp_metric_handler_requests_total{instance="node_exporter"}

當然,PromQL 的內容遠不止這些,待日后再記錄。

Grafana

Grafana 是一款數據可視化工具,先來直觀的感受一下吧,也可以訪問 Grafana Live Demo 體驗。

好了,先來安裝 Grafana,這里映射了一個本地文件夾到容器中

docker run -d -p 3000:3000 -v "D:\docker\grafana:/var/lib/grafana" --name grafana grafana/grafana

然后通過 http://localhost:3000 訪問 Grafana,默認用戶名密碼均為 admin。

首先進入 Home 頁面,選擇 Add data source 添加我們的 Prometheus 作為 Grafana 的數據源。需要注意的是,如果和我一樣使用 Docker,那么 Prometheus 的 URL 不能寫 localhost,需要填寫計算機的內網 IP 。

我們已經通過 Prometheus 采集了一批數據樣本,現在只需要添加一個新報表來呈現。在左側欄中依次選擇 Create - Dashboard,然后選擇 Add Query(如果顯示的是 Panel,把鼠標移動到 Panel Title 上,會出現菜單,選擇 Edit 來編輯它)。

將數據源(Query)修改為剛剛添加的 Prometheus 后,Metrics 中輸入和剛剛在 Prometheus 里一樣的 PromQL 語句?promhttp_metric_handler_requests_total{instance="node_exporter"}?然后按下回車,可視化的數據就生成了。

本文到此就結束了,簡單的介紹了 Prometheus 和 Grafana。后面還會介紹往 ASP.NET 中添加指標,并讓 Prometheus 來抓取,以及 PromQL 等的詳細內容。

總結

以上是生活随笔為你收集整理的监控系统简介:使用 Prometheus 与 Grafana的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 爱豆国产剧免费观看大全剧集 | 亚洲久爱| av猫咪| 妺妺窝人体色WWW精品 | 卡通动漫亚洲综合 | 中文字幕亚洲一区二区三区 | 懂色aⅴ国产一区二区三区 亚洲欧美国产另类 | av手机网站 | 久久久久久久久久亚洲 | 老司机在线精品视频 | 日韩理论视频 | 日韩av综合网 | 国产伦精品一区二区三区视频我 | 美女福利一区 | 福利视频99 | 男操女视频网站 | 夜夜躁很很躁日日躁麻豆 | 国产女主播在线一区二区 | 青娱乐av| 成人免费视频国产免费 | 午夜精品久久久久久久无码 | 国产一区二区在线免费观看视频 | 成人午夜影视 | 99re在线视频免费观看 | 91视频啪啪| 欧美粗大猛烈老熟妇 | 最近中文字幕在线观看视频 | 视频在线观看91 | 91偷拍富婆spa盗摄在线 | 久久黄色影视 | 日韩精品一区在线观看 | 成人一级网站 | 国产精品1区 | 小草av在线| 免费视频www在线观看网站 | 国产女同视频 | 91在线视频 | 免费看a视频| 91精品国产一区二区三区蜜臀 | 欧洲亚洲一区二区 | 欧美日韩精品久久 | 九色91视频| 免费大片黄在线观看视频网站 | 成人av第一页 | 国产成人精品无码播放 | 草草浮力影院 | 插插网站| 亚洲一级片免费看 | 狼人伊人久久 | 91黄色看片 | 国产精品亚洲一区二区三区 | 午夜aa| 国产性―交一乱―色―情人 | 久久激情网 | 国产成人精品一区二三区 | 五月天综合久久 | 黄色欧美一级片 | 久久精品福利 | 白丝开裆喷水 | 肉色超薄丝袜脚交一区二区 | 亚洲国产精品视频在线观看 | 欧美成人xxx | 免费精品一区 | 日韩一区二区视频在线播放 | 日日噜噜噜夜夜爽爽狠狠视频97 | 三级影片在线播放 | 久久精品综合 | 天天干天天搞天天射 | 国产精品入口66mio | 美女脱衣服一干二净 | 中出少妇 | 性色av一区二区三区四区 | 人妻视频一区二区三区 | 欧美精品乱码视频一二专区 | 少妇饥渴放荡91麻豆 | 91蜜桃传媒精品久久久一区二区 | 朝桐光av一区二区三区 | 伊人免费在线观看高清版 | 亚洲综合a | 亚洲精品18在线观看 | 久久国产情侣 | 国产精成人 | 国产又黄又粗的视频 | 大吊一区二区三区 | 中文字幕在线观看 | 欧美日韩精品一区二区三区视频播放 | 日韩av免费播放 | av日韩国产 | 成人免费毛片高清视频 | av男人网 | 97精品国产97久久久久久粉红 | 久久久久久久久久久综合 | 99视频+国产日韩欧美 | 国产精品国产三级国产普通话蜜臀 | 国产精品99久久久久久久久 | 一起射导航| 成人观看视频 | 欧美a级在线免费观看 | 小镇姑娘高清播放视频 |