使用Spring Boot Actuator、Jolokia和Grafana實現(xiàn)準(zhǔn)實時監(jiān)控

由于最近在做監(jiān)控方面的工作,因此也讀了不少相關(guān)的經(jīng)驗分享逸绎。其中有這樣一篇文章總結(jié)了一些基于Spring Boot的監(jiān)控方案惹恃,因此翻譯了一下,希望可以對大家有所幫助棺牧。

原文:Near real-time monitoring charts with Spring Boot Actuator, Jolokia and Grafana

Spring Boot Actuator通過/metrics端點巫糙,以開箱即用的方式為應(yīng)用程序的性能指標(biāo)與響應(yīng)統(tǒng)計提供了一個非常友好的監(jiān)控方式。

由于在集群化的彈性環(huán)境中颊乘,應(yīng)用程序的節(jié)點可以增長参淹、擴(kuò)展,并由非常大量的應(yīng)用實例所組成乏悄。對于孤立節(jié)點的監(jiān)控可能即費力又沒有什么實際效果浙值。所以,使用基于時間序列的數(shù)據(jù)聚合工具將獲得更好的效果檩小。

本文的目標(biāo)在于找出一種僅需要通過工具和配置的方式就能實現(xiàn)的解決方案开呐,來對Spring Boot Metrics實現(xiàn)基于時間序列的監(jiān)控。

像NewRelic, AppDynamics或DataDog這些APM系統(tǒng)都能很好地完成這樣的任務(wù)规求,它們通過使用JVM和字節(jié)碼工具來生成自己的指標(biāo)筐付、分析工具和相關(guān)事務(wù)。也可以通過使用@Timed注釋方法來實現(xiàn)阻肿。但是瓦戚,這些方法將忽略所有Spring Boot Actuator庫所提供的可用資源。另外丛塌,使用這些方法還有一個與保留數(shù)據(jù)相關(guān)的問題较解,它們對于短時間窗口內(nèi)的監(jiān)控是相對模糊的。

NewRelic在1分鐘時間窗口內(nèi)被發(fā)現(xiàn)和檢測的事務(wù)
NewRelic在1分鐘時間窗口內(nèi)被發(fā)現(xiàn)和檢測的事務(wù)

spring-boot-admin 可以作為另外一個備選方案赴邻,因為它可以連接到Spring Boot的實例印衔、并且可以聚合節(jié)點等。但是乍楚, /metrics 端點并不是根據(jù)時間軸來進(jìn)行監(jiān)控的当编,同時在不同節(jié)點上的相同應(yīng)用模塊(水平擴(kuò)展)也沒有得到聚合。這意味著您將面對這兩種情況:沒有時間序列的監(jiān)控數(shù)據(jù)徒溪、只有對孤立節(jié)點的監(jiān)控數(shù)據(jù)快照忿偷。

Spring Boot Admin with metrics from Actuator: a snapshot of metrics data of a given application node
Spring Boot Admin with metrics from Actuator: a snapshot of metrics data of a given application node
Spring Boot Admin with JMX and MBeans read data of a give application node
Spring Boot Admin with JMX and MBeans read data of a give application node

jconsolevisualvm可能是另外一種選擇,它們通過RMI直接連接到JMX節(jié)點臊泌。Actuator存儲來自JMX的MBean內(nèi)的Metrics數(shù)據(jù)鲤桥。另外,通過使用 Jolokia渠概,MBeans以RESTful HTTP端點的方式暴露绿淋,/jolokia。所以挣菲,相同的信息可以通過兩個端點來獲取:JMX MBean Metrics和Rest HTTP Jolokia端點筒狠。然而,這種方式存在同樣的問題箱沦,它們直接連接到集群環(huán)境中的單個節(jié)點辩恼,另外還伴隨著痛苦的老式RMI協(xié)議。

JConsole old-school JMX Metrics of a given application node
JConsole old-school JMX Metrics of a given application node
VisualVM JMX Metrics of a give application node
VisualVM JMX Metrics of a give application node

繼續(xù)前進(jìn)谓形,我嘗試了一些可能可以解決這些問題的現(xiàn)代化運維工具:

經(jīng)過一番研究复濒,我發(fā)現(xiàn)了一個更好的解決方案:通過InfluxDB 和Telegraf實現(xiàn),零編碼乒省,只需要通過一些正確的配置巧颈。

簡而言之欢揖,配置所有這些東西都非常的簡單。

Spring Boot Actuator Raw Metrics
Spring Boot Actuator Raw Metrics
Metrics sent by Telegraf to InfluxDB, collected by Jolokia and JMX over HTTP
Metrics sent by Telegraf to InfluxDB, collected by Jolokia and JMX over HTTP
Grafana InfluxDB data source configuration
Grafana InfluxDB data source configuration
Grafana Metric chart query and configuration: gauges of an API
Grafana Metric chart query and configuration: gauges of an API
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末奋蔚,一起剝皮案震驚了整個濱河市她混,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌泊碑,老刑警劉巖坤按,帶你破解...
    沈念sama閱讀 216,591評論 6 501
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異馒过,居然都是意外死亡臭脓,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,448評論 3 392
  • 文/潘曉璐 我一進(jìn)店門腹忽,熙熙樓的掌柜王于貴愁眉苦臉地迎上來来累,“玉大人,你說我怎么就攤上這事窘奏∴谒” “怎么了?”我有些...
    開封第一講書人閱讀 162,823評論 0 353
  • 文/不壞的土叔 我叫張陵着裹,是天一觀的道長领猾。 經(jīng)常有香客問我,道長骇扇,這世上最難降的妖魔是什么摔竿? 我笑而不...
    開封第一講書人閱讀 58,204評論 1 292
  • 正文 為了忘掉前任,我火速辦了婚禮匠题,結(jié)果婚禮上拯坟,老公的妹妹穿的比我還像新娘。我一直安慰自己韭山,他們只是感情好郁季,可當(dāng)我...
    茶點故事閱讀 67,228評論 6 388
  • 文/花漫 我一把揭開白布冷溃。 她就那樣靜靜地躺著,像睡著了一般梦裂。 火紅的嫁衣襯著肌膚如雪似枕。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,190評論 1 299
  • 那天年柠,我揣著相機(jī)與錄音凿歼,去河邊找鬼。 笑死冗恨,一個胖子當(dāng)著我的面吹牛答憔,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播掀抹,決...
    沈念sama閱讀 40,078評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼虐拓,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了傲武?” 一聲冷哼從身側(cè)響起蓉驹,我...
    開封第一講書人閱讀 38,923評論 0 274
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎揪利,沒想到半個月后态兴,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,334評論 1 310
  • 正文 獨居荒郊野嶺守林人離奇死亡疟位,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,550評論 2 333
  • 正文 我和宋清朗相戀三年瞻润,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片献汗。...
    茶點故事閱讀 39,727評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡敢订,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出罢吃,到底是詐尸還是另有隱情,我是刑警寧澤昭齐,帶...
    沈念sama閱讀 35,428評論 5 343
  • 正文 年R本政府宣布尿招,位于F島的核電站,受9級特大地震影響阱驾,放射性物質(zhì)發(fā)生泄漏就谜。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,022評論 3 326
  • 文/蒙蒙 一里覆、第九天 我趴在偏房一處隱蔽的房頂上張望丧荐。 院中可真熱鬧,春花似錦喧枷、人聲如沸虹统。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,672評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽车荔。三九已至渡冻,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間忧便,已是汗流浹背族吻。 一陣腳步聲響...
    開封第一講書人閱讀 32,826評論 1 269
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點兒被人妖公主榨干…… 1. 我叫王不留珠增,地道東北人超歌。 一個月前我還...
    沈念sama閱讀 47,734評論 2 368
  • 正文 我出身青樓,卻偏偏與公主長得像蒂教,于是被迫代替她去往敵國和親巍举。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 44,619評論 2 354

推薦閱讀更多精彩內(nèi)容