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

初識(shí)Spring boot監(jiān)控

 更新時(shí)間:2018年03月23日 15:13:16   作者:大名Dean鼎  
這篇文章主要介紹了spring boot監(jiān)控的相關(guān)知識(shí),文中給大家介紹了查看監(jiān)控?cái)?shù)據(jù),數(shù)據(jù)可視化的相關(guān)知識(shí),需要的朋友可以參考下

最近對(duì)devOps這個(gè)話(huà)題有點(diǎn)興趣,所以研究了一下monitor相關(guān)的開(kāi)源項(xiàng)目,翻到medium上的一篇文章,而且實(shí)際項(xiàng)目中也曾看到devOps組的同事搭過(guò)類(lèi)似的監(jiān)控,就想過(guò)把癮,了解一下監(jiān)控可視化。

被監(jiān)控服務(wù)配置

本地正好有spring-boot的項(xiàng)目,并且也依賴(lài)了jolokia(主要就是為了把JMX的mbean通過(guò)HTTP暴露出去)

項(xiàng)目配置也少不了

endpoints:
 enabled: true
 jmx:
  enabled: true
 jolokia:
  enabled: true
management:
 security:
  enabled: false

訪(fǎng)問(wèn)一下URL看看是不是ok

http://localhost:8080/jolokia/read/org.springframework.boot:name=metricsEndpoint,type=Endpoint/Data

搭建監(jiān)控系統(tǒng)

如果能看到數(shù)據(jù),說(shuō)明server端配置沒(méi)問(wèn)題了,下面我們?cè)趺创罱═elegraf + InfluxDB + Grafana呢,這個(gè)三個(gè)組件是這么配合的,Telegraf實(shí)際就是收集信息的,比如每隔10s訪(fǎng)問(wèn)一次上面那個(gè)URL得到metrics,收集到的數(shù)據(jù)存到InfluxDB,然后Grafana做數(shù)據(jù)可視化。

但是如果純手動(dòng)安裝實(shí)在太麻煩,求助萬(wàn)能的github,找到一個(gè)非常棒的項(xiàng)目(https://github.com/samuelebistoletti/docker-statsd-influxdb-grafana), 直接fork然后修改一些配置就可以為自己的項(xiàng)目服務(wù)了。如果你不了解相關(guān)配置可以先直接run起來(lái),然后通過(guò)ssh進(jìn)去一探究竟。

ssh root@localhost -p 22022

配置方面,主要是要修改Telegraf的,因?yàn)樗菍?duì)接不同項(xiàng)目的,你需要收集什么樣的信息,比如cpu,disk,net等等都要在Telegraf里配。簡(jiǎn)單起見(jiàn),我只設(shè)置了三個(gè)輸入。

# /etc/telegraf/telegraf.conf
[[inputs.jolokia]]
 context = "/jolokia"
[[inputs.jolokia.servers]]
 name = "springbootapp"
 host = "{app ip address}"
 port = "8080"
[[inputs.jolokia.metrics]]
 name = "metrics"
 mbean = "org.springframework.boot:name=metricsEndpoint,type=Endpoint"
 attribute = "Data"
[[inputs.jolokia.metrics]]
 name = "tomcat_max_threads"
 mbean = "Tomcat:name=\"http-nio-8080\",type=ThreadPool"
 attribute = "maxThreads"
[[inputs.jolokia.metrics]]
 name = "tomcat_current_threads_busy"
 mbean = "Tomcat:name=\"http-nio-8080\",type=ThreadPool"
 attribute = "currentThreadsBusy"

其實(shí)就是spring-boot標(biāo)準(zhǔn)的metrics以及tomcat的Threads。

完成之后重啟服務(wù)/etc/init.d/telegraf restart

查看監(jiān)控?cái)?shù)據(jù)

我們?cè)L問(wèn)InfluxDB看看有數(shù)據(jù)了沒(méi)有http://localhost:3004/,切換數(shù)據(jù)庫(kù)到Telegraf。輸入以下命令試試吧

SHOW MEASUREMENTS
SELECT * FROM jolokia
SELECT * FROM cpu
SELECT * FROM mem
SELECT * FROM diskio

比如輸入SELECT * FROM jolokia就能看到spring-boot暴露了哪些數(shù)據(jù),從time列也可以看出Telegraf是每隔10s收集一次,太頻繁了對(duì)server也是壓力。

上面基本涵蓋了cpu,內(nèi)存和存儲(chǔ)的一些metrics。

其實(shí)也可以配置網(wǎng)絡(luò)相關(guān)的,感興趣的可以看官方的telegraf.conf,里面有配置[[inputs.net]]的例子。

數(shù)據(jù)可視化

數(shù)據(jù)有了,下一步就是可視化。

按照Github上面說(shuō)的進(jìn)入http://localhost:3003/,

Using the wizard click on Add data source
Choose a name for the source and flag it as Default
Choose InfluxDB as type
Choose direct as access
Fill remaining fields as follows and click on Add without altering other fields
Url: http://localhost:8086
Database: telegraf
User: telegraf
Password: telegraf

添加好InfluxDB后,新建一個(gè)Dashboard,然后快速的ADD幾個(gè)Graph來(lái)。

為了演示,我添加了三個(gè),分別使用下面三組查詢(xún)語(yǔ)句來(lái)渲染出三張圖表

SELECT MEAN(usage_system) + MEAN(usage_user) AS cpu_total FROM cpu WHERE $timeFilter GROUP BY time($interval)
SELECT mean("total") as "total" FROM "mem" WHERE $timeFilter GROUP BY time($interval) fill(null)
SELECT mean("used") as "used" FROM "mem" WHERE $timeFilter GROUP BY time($interval) fill(null)
SELECT mean("metrics_heap.used") as "heap_usage" FROM "jolokia" WHERE $timeFilter GROUP BY time($interval) fill(null)

第一張是CPU占用率;第二張是內(nèi)存占用情況,綠線(xiàn)是Total,黃線(xiàn)是Used;第三張是jolokia提供的jvm heap的使用,可以到看到GC的情況。

剛才還配置了Tomcat的收集,想看Tomcat的Thread情況也是妥妥的。

SELECT mean("tomcat_max_threads") FROM "jolokia" WHERE $timeFilter GROUP BY time($interval) fill(null)
SELECT mean("tomcat_current_threads_busy") FROM "jolokia" WHERE $timeFilter GROUP BY time($interval) fill(null)

小結(jié)

以上所述是小編給大家介紹的Spring boot監(jiān)控,希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!

相關(guān)文章

  • IDEA 單元測(cè)試創(chuàng)建方法詳解(2020.03版本親測(cè))

    IDEA 單元測(cè)試創(chuàng)建方法詳解(2020.03版本親測(cè))

    這篇文章主要介紹了IDEA 單元測(cè)試創(chuàng)建方法詳解(2020.03版本親測(cè)),本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-10-10
  • 詳解Java中$符的各種使用場(chǎng)景

    詳解Java中$符的各種使用場(chǎng)景

    在Java編程中,我們會(huì)經(jīng)??吹?符的身影,比如經(jīng)常在配置文件中看到$符號(hào)作為變量占位符,用于在運(yùn)行時(shí)動(dòng)態(tài)地獲取變量值。本文將詳細(xì)介紹$符號(hào)在Java編程中的各種應(yīng)用場(chǎng)景,以幫助您更好地理解和運(yùn)用這個(gè)符號(hào),感興趣的小伙伴可以收藏一下
    2023-04-04
  • SpringBatch結(jié)合SpringBoot簡(jiǎn)單使用實(shí)現(xiàn)工資發(fā)放批處理操作方式

    SpringBatch結(jié)合SpringBoot簡(jiǎn)單使用實(shí)現(xiàn)工資發(fā)放批處理操作方式

    這篇文章主要介紹了SpringBatch結(jié)合SpringBoot簡(jiǎn)單使用實(shí)現(xiàn)工資發(fā)放批處理操作方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-09-09
  • Java集合之CopyOnWriteArrayList詳解

    Java集合之CopyOnWriteArrayList詳解

    這篇文章主要介紹了Java集合之CopyOnWriteArrayList詳解,CopyOnWriteArrayList是ArrayList的線(xiàn)程安全版本,內(nèi)部也是通過(guò)數(shù)組實(shí)現(xiàn),每次對(duì)數(shù)組的修改都完全拷貝一份新的數(shù)組來(lái)修改,修改完了再替換掉老數(shù)組,這樣保證了只阻塞寫(xiě)操作,需要的朋友可以參考下
    2023-12-12
  • Springboot+Thymeleaf+Jpa實(shí)現(xiàn)登錄功能(附源碼)

    Springboot+Thymeleaf+Jpa實(shí)現(xiàn)登錄功能(附源碼)

    最近有學(xué)習(xí)到關(guān)于Springboot+Thymeleaf+Jpa的綜合運(yùn)用知識(shí),因此想寫(xiě)一個(gè)簡(jiǎn)單的登錄界面來(lái)嘗試一下,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2021-05-05
  • SpringBoot請(qǐng)求參數(shù)傳遞與接收說(shuō)明小結(jié)

    SpringBoot請(qǐng)求參數(shù)傳遞與接收說(shuō)明小結(jié)

    這篇文章主要介紹了SpringBoot請(qǐng)求參數(shù)傳遞與接收,本文通過(guò)示例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-12-12
  • spring監(jiān)視器actuator配置應(yīng)用

    spring監(jiān)視器actuator配置應(yīng)用

    這篇文章主要介紹了spring監(jiān)視器actuator配置應(yīng)用,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2023-07-07
  • SpringBoot參數(shù)校驗(yàn)及原理全面解析

    SpringBoot參數(shù)校驗(yàn)及原理全面解析

    文章介紹了SpringBoot中使用@Validated和@Valid注解進(jìn)行參數(shù)校驗(yàn)的方法,包括基本用法和進(jìn)階用法,如自定義驗(yàn)證注解、多屬性聯(lián)合校驗(yàn)和嵌套校驗(yàn),并簡(jiǎn)要介紹了實(shí)現(xiàn)原理
    2024-11-11
  • Java 異常處理小結(jié),從入門(mén)到精通

    Java 異常處理小結(jié),從入門(mén)到精通

    這篇文章主要介紹了Java 異常處理小結(jié),從入門(mén)到精通,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-07-07
  • 通過(guò)Java代碼技巧改善性能

    通過(guò)Java代碼技巧改善性能

    在本篇文章里小編給大家分享了關(guān)于通過(guò)Java代碼技巧改善性能的相關(guān)知識(shí)點(diǎn),需要的朋友們參考下。
    2019-05-05

最新評(píng)論

瓮安县| 门头沟区| 泸州市| 闽侯县| 叙永县| 赤水市| 博野县| 佛教| 东乡| 山西省| 锡林郭勒盟| 思茅市| 牟定县| 通海县| 南宁市| 凌云县| 万安县| 泗水县| 惠安县| 隆化县| 镇远县| 桦南县| 和田县| 东至县| 亚东县| 洛阳市| 阿勒泰市| 桃园县| 华池县| 虞城县| 高尔夫| 新泰市| 南木林县| 平和县| 惠水县| 尚义县| 安溪县| 盐源县| 手机| 白山市| 罗山县|