最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

使用Grafana監(jiān)控Redis的操作方法

 更新時間:2022年04月19日 14:26:44   作者:macrozheng  
這篇文章主要介紹了使用Grafana監(jiān)控Redis,號稱下一代可視化監(jiān)控系統(tǒng),結合SpringBoot使用,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下

當面對一個復雜的系統(tǒng)時,我們往往需要監(jiān)控工具來幫助我們解決一些性能問題。比如之前我們使用SpringBoot Admin來監(jiān)控應用,從而獲取到SpringBoot Actuator暴露的指標信息。今天給大家介紹一個功能強大的監(jiān)控工具Grafana,只要需要用到監(jiān)控的地方,用它做可視化就對了!

Grafana簡介

Grafana是一款開源的數據可視化和分析工具,不管你的指標信息存儲在哪里,你都可以用它來可視化這些數據。同時它還具有告警功能,當指標超出指定范圍時會提醒你。

Prometheus簡介

Prometheus是一款時序數據庫,可以簡單理解為帶時間的MySQL數據庫。由于Grafana只能將數據轉換成可視化圖表,并沒有存儲功能,所以我們需要結合Prometheus這類時序數據庫一起使用。

安裝

使用Docker安裝Grafana和Prometheus無疑是最簡單的,我們接下來將采用此種方式。

  • 首先下載Grafana的Docker鏡像;

docker?pull?grafana/grafana
  • 下載完成后運行Grafana;

docker?run?-p?3000:3000?--name?grafana?\
-d?grafana/grafana
  • 接下來下載Prometheus的Docker鏡像;

docker?pull?prom/prometheus
  • /mydata/prometheus/目錄下創(chuàng)建Prometheus的配置文件prometheus.yml

global:
??scrape_interval:?5s
  • 運行Prometheus,把宿主機中的配置文件prometheus.yml掛載到容器中去;

docker?run?-p?9090:9090?--name?prometheus?\
-v?/mydata/prometheus/prometheus.yml:/etc/prometheus/prometheus.yml?\
-d?prom/prometheus
  • 至此安裝完成,是不是很簡單!可以通過如下地址訪問Grafana,登錄賬號密碼為admin:admin,訪問地址:http://192.168.5.78:3000/

  • 登錄Grafana后顯示界面如下;

  • 其實Prometheus也是有可視化界面的,就是有點簡陋,訪問地址:http://192.168.5.78:9090/

使用

Grafana已經安裝完后,是時候來波實踐了,接下來我們來介紹下使用Grafana來監(jiān)控Linux系統(tǒng)和SpringBoot應用。

監(jiān)控系統(tǒng)信息

使用node_explorer可以暴露Linux系統(tǒng)的指標信息,然后Prometheus就可以通過定時掃描的方式獲取并存儲指標信息了。

  • 下載node_explorer的安裝包,下載地址:https://prometheus.io/download/#node_exporter

  • 這次我們直接把node_explorer安裝到Linux服務器上(如果使用Docker容器安裝,監(jiān)控的會是Docker容器的指標信息),將下載的安裝包解壓到指定目錄,并修改文件夾名稱:

cd?/mydata
tar?-zxvf?node_exporter-1.1.2.linux-amd64.tar.gz
mv?node_exporter-1.1.2.linux-amd64?node_exporter
  • 進入解壓目錄,使用如下命令運行node_explorer,服務將運行在9100端口上;

cd?node_exporter
./node_exporter?>log.file?2>&1?&
  • 使用curl命令訪問獲取指標信息接口,獲取到信息表示運行成功;

curl?http://localhost:9100/metrics
#?HELP?promhttp_metric_handler_requests_in_flight?Current?number?of?scrapes?being?served.
#?TYPE?promhttp_metric_handler_requests_in_flight?gauge
promhttp_metric_handler_requests_in_flight?1
#?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"}?2175
promhttp_metric_handler_requests_total{code="500"}?0
promhttp_metric_handler_requests_total{code="503"}?0
  • 接下來修改Prometheus的配置文件prometheus.yml,創(chuàng)建一個任務定時掃描node_explorer暴露的指標信息;

scrape_configs:
??-?job_name:?node
????static_configs:
????-?targets:?['192.168.5.78:9100']
  • 重啟Prometheus容器,可以通過加號->Dashboard來創(chuàng)建儀表盤;

  • 當然你還可以選擇去Grafana的儀表盤市場下載一個Dashboard,市場地址:https://grafana.com/grafana/dashboards

  • 這里選擇了Node Exporter Full這個儀表盤,記住它的ID,訪問地址:https://grafana.com/grafana/dashboards/1860

  • 選擇導入Dashboard并輸入ID,最后點擊Load即可;

  • 選擇數據源為Prometheus,最后點擊Import;

  • 導入成功后就可以在Grafana中看到實時監(jiān)控信息了,是不是夠炫酷!

監(jiān)控SpringBoot應用

監(jiān)控SpringBoot應用需要依靠actuatormicrometer,通過暴露actuator的端點,Prometheus可以定時獲取并存儲指標信息。

  • 修改項目的pom.xml文件,添加actuatormicrometer依賴;

<dependencies>
????<dependency>
????????<groupId>org.springframework.boot</groupId>
????????<artifactId>spring-boot-starter-actuator</artifactId>
????</dependency>
????<!--?集成micrometer,將監(jiān)控數據存儲到prometheus?-->
????<dependency>
????????<groupId>io.micrometer</groupId>
????????<artifactId>micrometer-registry-prometheus</artifactId>
????</dependency>
</dependencies>
  • 修改應用配置文件application.yml,通過actuator暴露監(jiān)控端口/actuator/prometheus;

management:
??endpoints:
????web:
??????exposure:
????????#?暴露端點`/actuator/prometheus`
????????include:?'prometheus'
??metrics:
????tags:
??????application:?${spring.application.name}
  • 在監(jiān)控SpringBoot應用之前,我們需要先運行一個SpringBoot應用,使用如下命令運行即可;

docker?run?-p?8088:8088?--name?mall-tiny-grafana?\
-v?/etc/localtime:/etc/localtime?\
-v?/mydata/app/mall-tiny-grafana/logs:/var/logs?\
-e?TZ="Asia/Shanghai"?\
-d?mall-tiny/mall-tiny-grafana:1.0-SNAPSHOT
  • 修改Prometheus的配置文件prometheus.yml,創(chuàng)建一個任務定時掃描actuator暴露的指標信息,這里需要注意下,由于SpringBoot應用運行在Docker容器中,需要使用docker inspect mall-tiny-grafana |grep IPAddress來獲取容器IP地址;

scrape_configs:
??#?采集任務名稱
??-?job_name:?'mall-tiny-grafana'
????#?采集時間間隔
????scrape_interval:?5s
????#?采集超時時間
????scrape_timeout:?10s
????#?采集數據路徑
????metrics_path:?'/actuator/prometheus'
????#?采集服務的地址
????static_configs:
??????-?targets:?['172.17.0.5:8088']
  • 我們可以通過Prometheus的可視化界面,來確定Prometheus是否能獲取到指標信息;

  • 同樣,我們可以從儀表盤市場導入儀表盤,訪問地址:https://grafana.com/grafana/dashboards/14370

  • 導入成功后就可以在Grafana中看到SpringBoot實時監(jiān)控信息了,果然夠炫酷!

總結

通過對Grafana的一波實踐,我們可以發(fā)現,使用Grafana來進行數據可視化的過程是這樣的:首先我們得讓被監(jiān)控方將指標信息暴露出來,然后用Prometheus定時獲取并存儲指標信息,最后將Prometheus配置為Grafana的可視化數據源。

參考資料

項目源碼地址

https://github.com/macrozheng/mall-learning/tree/master/mall-tiny-grafana

到此這篇關于使用Grafana監(jiān)控Redis的文章就介紹到這了,更多相關Grafana監(jiān)控Redis內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • 高并發(fā)下Redis精確計數與時間窗口過期的方法詳解

    高并發(fā)下Redis精確計數與時間窗口過期的方法詳解

    在實時數據處理系統(tǒng)中,我們經常需要統(tǒng)計某個事件在特定時間窗口內的發(fā)生次數,本文將詳細介紹如何基于 Redis 實現高性能、高可用的計數方案,需要的可以參考下
    2025-03-03
  • 利用Redis實現訪問次數限流的方法詳解

    利用Redis實現訪問次數限流的方法詳解

    這篇文章主要給大家介紹了關于如何利用Redis實現訪問次數限流的相關資料,文中通過實例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2022-02-02
  • redis執(zhí)行l(wèi)ua腳本的實現

    redis執(zhí)行l(wèi)ua腳本的實現

    本文主要介紹了redis執(zhí)行l(wèi)ua腳本的實現,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2024-10-10
  • redis requires ruby version2.2.2的解決方案

    redis requires ruby version2.2.2的解決方案

    本文主要介紹了redis requires ruby version2.2.2的解決方案,文中通過示例代碼介紹的非常詳細,需要的朋友們下面隨著小編來一起學習學習吧
    2021-07-07
  • 使用Redis實現實時排行榜功能

    使用Redis實現實時排行榜功能

    排行榜功能是一個很普遍的需求。使用 Redis 中有序集合的特性來實現排行榜是又好又快的選擇。接下來通過本文給大家介紹使用Redis實現實時排行榜功能,需要的朋友可以參考下
    2021-07-07
  • Redis報錯“NOAUTH Authentication required”兩種解決方案

    Redis報錯“NOAUTH Authentication required”兩種解決方案

    Redis提供了一個命令行工具redis-cli,它允許你直接連接到Redis服務器,如果你知道Redis服務器的密碼,你可以在連接時直接提供它,本文給大家介紹連接了Redis報錯“NOAUTH Authentication required”兩種解決方案
    2024-05-05
  • redis做websocket分布式消息推送服務的實現

    redis做websocket分布式消息推送服務的實現

    本文介紹了使用Redis作為消息隊列實現WebSocket分布式消息推送服務的方案,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2024-12-12
  • 淺談Redis主從復制以及主從復制原理

    淺談Redis主從復制以及主從復制原理

    在現有企業(yè)中80%公司大部分使用的是redis單機服務,在實際的場景當中單一節(jié)點的redis容易面臨風險。本文將介紹Redis主從復制以及主從復制原理。
    2021-05-05
  • Redis 對過期數據的處理方法

    Redis 對過期數據的處理方法

    這篇文章主要介紹了Redis 對過期數據的處理,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-10-10
  • redis中token失效引發(fā)的一次生產事故

    redis中token失效引發(fā)的一次生產事故

    項目再測試的時候發(fā)現不定時token失效,本文主要介紹了redis中token失效引發(fā)的一次生產事故,文中通過示例代碼介紹的非常詳細,需要的朋友們下面隨著小編來一起學習學習吧
    2024-03-03

最新評論

保靖县| 新兴县| 收藏| 新田县| 绍兴市| 嫩江县| 镇安县| 临湘市| 商都县| 图片| 深圳市| 彰武县| 新建县| 定襄县| 台东县| 徐水县| 缙云县| 香格里拉县| 涡阳县| 镇坪县| 新巴尔虎右旗| 禄丰县| 安宁市| 道孚县| 陕西省| 会同县| 综艺| 祥云县| 报价| 玛多县| 赣州市| 扎鲁特旗| 青川县| 凌海市| 乳源| 沭阳县| 台南市| 济南市| 柏乡县| 白山市| 赣州市|