Springboot添加jvm監(jiān)控實(shí)現(xiàn)數(shù)據(jù)可視化
1.簡(jiǎn)介
最近越發(fā)覺得,任何一個(gè)系統(tǒng)上線,運(yùn)維監(jiān)控都太重要了。本文介紹Prometheus + Grafana的方法監(jiān)控Springboot 2.X,實(shí)現(xiàn)美觀漂亮的數(shù)據(jù)可視化。
2.添加監(jiān)控
Spring-boot-actuator module 可幫助您在將應(yīng)用程序投入生產(chǎn)時(shí)監(jiān)視和管理應(yīng)用程序。您可以選擇使用 HTTP 端點(diǎn)或 JMX 來管理和監(jiān)控您的應(yīng)用程序。Auditing, health, and metrics gathering 也可以自動(dòng)應(yīng)用于您的應(yīng)用程序。引入依賴如下:
<!--監(jiān)控報(bào)警--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-actuator</artifactId> </dependency> <dependency> <groupId>io.micrometer</groupId> <artifactId>micrometer-registry-prometheus</artifactId> </dependency>
對(duì)于Springboot,要開啟Actuator,并打開對(duì)應(yīng)的Endpoint:
#prometheus配置 info:alen:alenmanagement:endpoints:web:base-path:/actuatorexposure:include:"*"
啟動(dòng)Springboot后,可以通過下面URL看能不能正確獲取到監(jiān)控?cái)?shù)據(jù):localhost/actuator/prometheus 獲取數(shù)據(jù)成功,說明Springboot能正常提供監(jiān)控?cái)?shù)據(jù)。
主要的端點(diǎn)
3.配置Prometheus
Prometheus 是 Cloud Native Computing Foundation 項(xiàng)目之一,是一個(gè)系統(tǒng)和服務(wù)監(jiān)控系統(tǒng)。它按給定的時(shí)間間隔從配置的目標(biāo)收集指標(biāo),評(píng)估規(guī)則表達(dá)式,顯示結(jié)果,并且如果觀察到某些條件為真,則可觸發(fā)警報(bào)。
特性
• 多維度 數(shù)據(jù)模型(由度量名稱和鍵/值維度集定義的時(shí)間序列)
• 靈活的查詢語言 來利用這種維度
• 不依賴分布式存儲(chǔ);單個(gè)服務(wù)器節(jié)點(diǎn)是自治的
• 時(shí)間序列采集通過HTTP上的 pull model 發(fā)生
• 推送時(shí)間序列 通過中間網(wǎng)關(guān)得到支持
• 通過 服務(wù)發(fā)現(xiàn) 或 靜態(tài)配置 來發(fā)現(xiàn)目標(biāo)
• 多種模式的 圖形和儀表盤支持
• 支持分級(jí)和水平 federation
通過 Prometheus 來抓取數(shù)據(jù) Prometheus 會(huì)按照配置的時(shí)間周期去 pull 暴露的端點(diǎn)(/actuator/prometheus)中的指標(biāo)數(shù)據(jù) prometheus.yml 配置
- job_name: 'actuator-ruoyi' # metrics_path defaults to '/metrics' # scheme defaults to 'http'. metrics_path: '/actuator/prometheus' static_configs: - targets: ['10.42.95.4']
重然后再啟動(dòng)prometheus,訪問prometheus網(wǎng)址,查看targets啟動(dòng)是否正常如下圖
4.Grafana添加監(jiān)控模版
默認(rèn)啟動(dòng)后Grafana地址為:http://localhost:3000/,登錄用戶名和密碼是admin/admin,import配置grafana id = 4701
最終的效果是這樣子的,如下圖
5.備注
問題:添加上訪問不了Endpoint?解決方案:原因是項(xiàng)目用的shiro,需要添加過濾
filterChainDefinitionMap.put("/actuator/**","anon");
問題二:
/O exception (java.io.IOException) caught when processing request to {}->unix://localhost:80: Broken pipe
解決方法:導(dǎo)致這個(gè)錯(cuò)誤的原因是 project.artifactId 可能包含了大寫。改成小寫就行
到此這篇關(guān)于Springboot添加jvm監(jiān)控實(shí)現(xiàn)數(shù)據(jù)可視化的文章就介紹到這了,更多相關(guān)Springboot jvm監(jiān)控?cái)?shù)據(jù)可視化內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- 使用SpringBoot+Prometheus+Grafana實(shí)現(xiàn)可視化監(jiān)控
- Spring?Boot?Admin?監(jiān)控指標(biāo)接入Grafana可視化的實(shí)例詳解
- vue+flv.js+SpringBoot+websocket實(shí)現(xiàn)視頻監(jiān)控與回放功能
- SpringBoot Admin 如何實(shí)現(xiàn)Actuator端點(diǎn)可視化監(jiān)控
- springboot Actuator的指標(biāo)監(jiān)控可視化功能詳解
- SpringBoot可視化監(jiān)控的具體應(yīng)用
- SpringBoot監(jiān)視器的具體使用
相關(guān)文章
Java數(shù)據(jù)類型轉(zhuǎn)換實(shí)例解析
這篇文章主要介紹了Java數(shù)據(jù)類型轉(zhuǎn)換實(shí)例解析,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2019-11-11Java實(shí)現(xiàn)身份證號(hào)碼驗(yàn)證源碼示例分享
本篇文章主要介紹了Java實(shí)現(xiàn)身份證號(hào)碼驗(yàn)證源碼示例分享,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2017-10-10詳解JAVA 設(shè)計(jì)模式之狀態(tài)模式
這篇文章主要介紹了JAVA 狀態(tài)模式的的相關(guān)資料,文中講解的非常細(xì)致,幫助大家更好的學(xué)習(xí)理解JAVA 設(shè)計(jì)模式,感興趣的朋友可以了解下2020-06-06分析那些不講武德的SDK(構(gòu)造使用規(guī)范)
這篇文章主要為大家介紹了盤點(diǎn)分析那些不講武德的SDK(構(gòu)造規(guī)范)詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-05-05SpringBoot如何根據(jù)目錄結(jié)構(gòu)生成API接口前綴
這篇文章主要介紹了SpringBoot如何根據(jù)目錄結(jié)構(gòu)生成API接口前綴,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-02-02濫用@PathVariable導(dǎo)致bug原因分析解決
這篇文章主要為大家介紹了濫用@PathVariable導(dǎo)致bug原因分析解決,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-12-12Java驗(yàn)證碼功能的實(shí)現(xiàn)方法
這篇文章主要為大家詳細(xì)介紹了Java驗(yàn)證碼功能的實(shí)現(xiàn)方法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-11-11