1. 程式人生 > >Prometheus 與 Grafana 整合

Prometheus 與 Grafana 整合

簡介

Grafana 是一個視覺化儀表盤,它擁有美觀的圖示和佈局展示,功能齊全的儀表盤和圖形編輯器,預設支援 CloudWatch、Graphite、Elasticsearch、InfluxDB、Mysql、PostgreSQL、Prometheus、OpenTSDB 等作為資料來源。上一篇我們通過Prometheus 自帶的 Web UI 展示 Prometheus 抓取的資料,本篇將利用 Grafana 更加直觀展示的出來。

安裝 Grafana

通過docker容器安裝Grafana

docker run -d --name=grafana -p 3000:3000 grafana/grafana

訪問 http://localhost:3000/ 賬號 admin 密碼 admin ,登入後介面如下:

新增Prometheus資料來源

點選 “Add data soure” 選擇 “Prometheus” 出現新增介面:

然後填寫 Name : prometheus-datasources , URL : prometheus server 地址 , 其他配置預設即可,然後儲存。

配置

建立一個Dashboard

點選 “+” 圖示建立一個Dashbaord

點選 “儲存” 圖示儲存Dashboard,使用預設Folder,給Dashboard起名為 “http-simulator”

展示請求率

點選 “Add panel” 圖示,點選 “Choose Visualization” 選擇視覺化 圖表的型別。

點選 “Visualization” 選擇 “Graph”

調整 “Legend” 顯示度量標準查詢返回的所有值的 最小值、最大值、平均值、當前值、總計

點選 “General” 修改 “Title” 為 “Request Rate” ,

點選 “Queries” 輸入 Prometheus 表示式

sum(rate(http_requests_total{job="http-simulator"}[5m]))

可看到已經展示出了請求率變化曲線圖,也顯示了最小值、最大值、平均值、當前值、總計。

點選右上方的 “儲存” 圖示,儲存對 Dahsboard 的修改。

展示實時錯誤率

為了展示資料明顯,把 http-simulator 服務的錯誤率改到40%

curl -H 'Content-Type: application/json' -X PUT -d '{"error_rate": 1}' http://127.0.0.1:8080/error_rate

有了上面配置經驗,這裡就不說的太細了。

點選 “Add panel圖示” ,新增一個新的 Pannel,點選 “Choose Visualization” 選擇視覺化 圖表的型別,點選 “Singlestat” 圖示新增一個 Singlestat,修改 Panel Title 為 Live Error Rate

點選 “Queries” 輸入 Prometheus 表示式

sum(rate(http_requests_total{job="http-simulator", status="500"}[5m])) / sum(rate(http_requests_total{job="http-simulator"}[5m]))

調整顯示單位unit,設定為None->percent(0.0-1.0),然後調整顯示值(目前為平均)為當前值(now):Options->Value->Stat,設定為Current

新增閥值和顏色,在 Coloring 下,選中Value,將Threshold設定為0.01,0.05,表示

  • 綠色:0-1%
  • 橙色:1-5%
  • 紅色:>5%

新增測量儀效果,在 Gauge 下,選中Show,並將 Max設為 1

最後別忘了 “Control + S” 或 點選 右上方的 “儲存” 圖示,儲存修改後的Dashbaord。

展示 Top requested 端點

新增一個新的 Pannel,點選 “Choose Visualization” 選擇視覺化 圖表的型別,點選 “Table” 圖示新增一個 Table,修改 Panel Title 為 Top requested

點選 “Queries” 輸入 Prometheus 表示式

sum(rate(http_requests_total{job="http-simulator"}[5m])) by (endpoint)

減少表中資料項,選中Instant只顯示當前值

隱藏Time列,在 Column Sytle 下,Apply to columns named為Time,將Type->Type設定為Hidden

將Value列重新命名,新增一個Column Style,Apply to columns named設為Value,將Column Header設定為Requests/s

點選表中的 Requests/s header,讓其中資料根據端點活躍度進行排序。

儲存修改後的Dashbaord。




歡迎掃碼或微信搜尋公眾號《程式設計師果果》關注我,關注有驚喜~

相關推薦

Prometheus Grafana 整合

簡介 Grafana 是一個視覺化儀表盤,它擁有美觀的圖示和佈局展示,功能齊全的儀表盤和圖形編輯器,預設支援 CloudWatch、Graphite、Elasticsearch、InfluxDB、Mysql、PostgreSQL、Prometheus、OpenTSDB 等作為資料來源。上一篇我們通過Prome

elasticsearch grafana整合

效果圖: 安裝 grafana systemctl daemon-reload vim /etc/grafana/grafana.ini [paths] logs = /var/log/grafana [server

grafana安裝使用及zabbix整合

開發十年,就只剩下這套架構體系了! >>>   

Docker整合PrometheusGrafana監控Mysql

前言:接著上一篇文章整合Redis搭建Mysql監控,參考https://my.oschina.net/wubiaowpBlogS

Docker整合PrometheusGrafana監控MongoDB

前言:接著上一篇文章整合Redis搭建MongoDB監控,參考https://my.oschina.net/wubiaowpBlo

Docker整合PrometheusGrafana監控RabbitMQ

前言:這裡是單獨下載的rabbitmq-exporter安裝的,基於Docker下載rabbitmq-exporter服務啟動正常

Mybatis中Mapper代理形式開發spring整合

can sna 修改 jar xid oca pac user cal 1.導入jar包 2.分包 cogfig:存放配置文件 mapper:存放映射與接口 pojo:存放實體類 test:測試代碼 3.編寫配置文件 SqlMapConfig.xml <?

SpringMybatis整合

base package div classpath conf data pac 是否 ner 一 概述 1.整合的目的 將Mapper映射器的創建任務交給Spring容器。 二 具體實現 1.創建sqlSessionFactory: <bean id="sql

springstruts2整合出現錯誤HTTP Status 500 - Unable to instantiate Action

alt 問題 blog src nbsp 文件 spa XML color 在進行spring和struts2整合的時候因為大意遇到了一個問題,費了半天神終於找到了問題所在,故分享出來望廣大博友引以為戒!! 我們都知道在spring和struts2整合時,spring接管了

Elasticsearch Kafka 整合剖析

簡單 prepare 3.2 ger 郵件 核心 pri servers 技術 1.概述   目前,隨著大數據的浪潮,Kafka 被越來越多的企業所認可,如今的Kafka已發展到0.10.x,其優秀的特性也帶給我們解決實際業務的方案。對於數據分流來說,既可以分流到離線存儲

SpringMVCmybatis整合

工程 信息 一、逆向工程生成基礎信息<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE generatorConfiguration PUBLIC "-//mybatis.org//DTD MyBatis Generator Confi

mybatisspring整合

fig bsp 切面 業務 開啟 per cep ret ever 1.Spring同mybatis的整合步驟? DataSource(主要提供的數據源) 整合SqlSe

ipvsadmkeepalived整合

ipvsadm與keepalived整合1.準備兩臺虛擬服務器(DR),分別安裝ipvsadm和keepalivedyum -y install ipvsadm yum -y install keepalived2.配置keepalived.conf #修改IP為192.168.2.137的DR

阿修羅監控grafana結合使用

cmdb grafana 阿修羅監控 環境準備一、安裝grafana 按自己習慣創建安裝目錄,本文在當前目錄 #cd #wget https://s3-us-west-2.amazonaws.com/grafana-releases/release/grafana-4.3

springquartz整合實現分布式動態創建,刪除,改變執行時間定時任務(mysql數據庫)

ces value 我們 job clu xsd collect 註解 common 背景:因為在項目中用到了定時任務,當時想到了spring的quartz,寫完發現費了很大功夫,光是整合就花了一上午,其中最大的問題就是版本問題,項目中用的是spring3.2.8的版本,查

springmybati整合方法

interface start face mapper con tro p s org lose (1)spring配置文件: <!-- 引入jdbc配置文件 --> <context:property-placeholder lo

sparkflume整合

kcon text org http clas appname spl storage ket spark-streaming與flume整合 push package cn.my.sparkStream import org.apache.spark.SparkCo

ApacheTomcat整合的配置

str windows nec x86 logs info ogr 級別 oca 下載jk連接器地址:http://archive.apache.org/dist/tomcat/tomcat-connectors/jk/binaries/windows/ 把jk連接器即“m

Apache shiro的簡單介紹使用(spring整合使用)

簡單介紹 ace .cn album spring 整合 amp 介紹 pri http://pic.cnhubei.com/space.php?uid=1774&do=album&id=1343605http://pic.cnhubei.com/space

SpringMVC系列(十五)Spring MVCSpring整合時實例被創建兩次的解決方案以及Spring 的 IOC 容器和 SpringMVC 的 IOC 容器的關系

問題 nbsp frame ota 展示 not als pri exc 一、Spring MVC與Spring整合時實例被創建兩次的解決方案 1.問題產生的原因 Spring MVC的配置文件和Spring的配置文件裏面都使用了掃描註解<context:compon