SpringBoot 應(yīng)用監(jiān)控踩坑集錦

一、Spring Boot 應(yīng)用暴露監(jiān)控指標(biāo)【版本 1.5.7.RELEASE】

首先,添加以下依賴:

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-actuator</artifactId>
        </dependency>

        <dependency>
            <groupId>io.prometheus</groupId>
            <artifactId>simpleclient_spring_boot</artifactId>
            <version>0.0.26</version>
        </dependency>

然后车柠,在啟動類 Application.java 添加如下注解:

@SpringBootApplication
@EnablePrometheusEndpoint
@EnableSpringBootMetricsCollector
public class Application {

    public static void main(String[] args) {
        SpringApplication.run(Application.class, args);
    }

}

啟動應(yīng)用程序后,會看到如下一系列的 Mappings:

image.png

上面這張圖需要 idea2017.2版本以上才能看到哦~~
這時很開心以為這樣就成功了,接下來看遇到的第一個坑疤孕。。搔课。

坑一胰柑、訪問監(jiān)控地址報錯

打開瀏覽器訪問 http://localhost:8080/metrics ,不好意思報錯了哦爬泥,請看報錯原因:

image.png

相信使用過 springboot 的人看到這個頁面一定很熟悉,竟然沒有權(quán)限崩瓤,那咋辦呢袍啡,當(dāng)然是打開官方文檔瞄一眼咯~~~

image.png

敏感的訪問節(jié)點需要用戶名密碼才能訪問。

坑一却桶、解決方法

(1)放棄安全性境输,臨時暴露出來看一下的方法蔗牡。(不建議使用)
在application.properties配置文件增加如下選項

management.security.enabled=false
endpoints.health.sensitive=false

(2)設(shè)權(quán)限,安全查看:
第一步嗅剖,添加依賴:

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-security</artifactId>
        </dependency>

第二步辩越,配置用戶名密碼

security.user.name=admin
security.user.password=123456
management.security.roles=SUPERUSER

這樣在瀏覽器訪問時會要求先輸入密碼才能訪問。
這里給出一個完整的 application.properties配置:

# 啟用基礎(chǔ)認(rèn)證
security.basic.enabled = true

# 安全路徑列表信粮,逗號分隔黔攒,此處只針對/admin路徑進(jìn)行認(rèn)證
security.basic.path = /admin

# 認(rèn)證使用的用戶名
security.user.name = admin

# 認(rèn)證使用的密碼。 默認(rèn)情況下强缘,啟動時會記錄隨機(jī)密碼督惰。
security.user.password = 123456

# 可以訪問管理端點的用戶角色列表,逗號分隔
management.security.roles = SUPERUSER

# actuator暴露接口使用的端口旅掂,為了和api接口使用的端口進(jìn)行分離
management.port = 8099

# actuator暴露接口的前綴
management.context-path = /admin

# actuator是否需要安全保證
management.security.enabled = true

# actuator的metrics接口是否需要安全保證
endpoints.metrics.sensitive = false

# actuator的metrics接口是否開啟
endpoints.metrics.enabled=true

# actuator的health接口是否需要安全保證
endpoints.health.sensitive=false

# actuator的health接口是否開啟
endpoints.health.enabled=true

打開瀏覽器訪問http://localhost:8099/admin/prometheus 赏胚,輸入用戶名密碼;可以看到以下信息商虐,是不是很完美觉阅。

image.png

二、Prometheus 采集 Spring Boot 指標(biāo)數(shù)據(jù)

首先秘车,下載 Prometheus 的安裝軟件典勇,下載可能比較慢,有需要的可以給我留言鲫尊,我可以提供prometheus-1.8.0.linux-amd64.tar.gz版本痴柔,官網(wǎng)下載地址:https://github.com/prometheus/prometheus/releases
其次,編寫配置文件 prometheus.yml :

global:
  scrape_interval: 10s
  scrape_timeout: 10s
  evaluation_interval: 10m
scrape_configs:
  - job_name: spring-boot
    scrape_interval: 5s
    scrape_timeout: 5s
    metrics_path: /admin/prometheus
    scheme: http
    basic_auth:
      username: admin
      password: 123456
    static_configs:
      - targets:
        - 192.168.8.244:8099  #此處填寫 Spring Boot 應(yīng)用的 IP + 端口號

有關(guān)配置選項的完整規(guī)范疫向,請查看配置文檔咳蔚。
然后,啟動 Prometheus :

./prometheus -config.file=prometheus.yml &

最后搔驼,訪問 http://localhost:9090/targets , 檢查 Spring Boot 采集狀態(tài)是否正常谈火。

prometheus采集狀態(tài).png

三、Grafana 可視化監(jiān)控數(shù)據(jù)

首先舌涨,獲取 Grafana 的安裝包糯耍,有需要的可以給我留言,我可以提供grafana-4.5.2-1.x86_64.rpm囊嘉,官方下載地址:https://grafana.com/grafana/download
其次温技,啟動 Grafana:

sudo /bin/systemctl start grafana-server.service

然后,訪問 http://localhost:3000/ 查看Grafana是否安裝成功扭粱。開始登陸時需要用戶名密碼舵鳞,Grafana 登錄賬號 admin 密碼 admin

Grafana登錄頁.png

能夠打開上面的頁面表示安裝成功。
最后琢蛤,就是配置Grafana蜓堕。

1抛虏、Grafana配置

1、登陸成功后顯示的頁面如下:

Grafana首頁.png

2套才、配置數(shù)據(jù)源迂猴,點擊Add data source,進(jìn)入以下頁面:

Add data source.png

配置結(jié)果如下:

配置結(jié)果.png

3背伴、配置單個指標(biāo)的可視化監(jiān)控面板沸毁,點擊Create your first dashboard,進(jìn)入如下頁面:

Create your first dashboard.png
選擇 Graph.png
編輯 Graph.png
配置需要監(jiān)控的指標(biāo).png

注意:此處不能任意填寫挂据,只能填已有的指標(biāo)點以清,具體的可以在 Prometheus 的首頁看到,即 http://localhost:9090/graph

指標(biāo).png

多配置幾個指標(biāo)之后崎逃,即可有如下效果:

Grafana 監(jiān)控界面.png
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末掷倔,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子个绍,更是在濱河造成了極大的恐慌勒葱,老刑警劉巖,帶你破解...
    沈念sama閱讀 222,729評論 6 517
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件巴柿,死亡現(xiàn)場離奇詭異凛虽,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)广恢,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 95,226評論 3 399
  • 文/潘曉璐 我一進(jìn)店門凯旋,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人钉迷,你說我怎么就攤上這事至非。” “怎么了糠聪?”我有些...
    開封第一講書人閱讀 169,461評論 0 362
  • 文/不壞的土叔 我叫張陵荒椭,是天一觀的道長。 經(jīng)常有香客問我舰蟆,道長趣惠,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 60,135評論 1 300
  • 正文 為了忘掉前任身害,我火速辦了婚禮味悄,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘塌鸯。我一直安慰自己傍菇,他們只是感情好,可當(dāng)我...
    茶點故事閱讀 69,130評論 6 398
  • 文/花漫 我一把揭開白布界赔。 她就那樣靜靜地躺著丢习,像睡著了一般。 火紅的嫁衣襯著肌膚如雪淮悼。 梳的紋絲不亂的頭發(fā)上咐低,一...
    開封第一講書人閱讀 52,736評論 1 312
  • 那天,我揣著相機(jī)與錄音袜腥,去河邊找鬼见擦。 笑死,一個胖子當(dāng)著我的面吹牛羹令,可吹牛的內(nèi)容都是我干的鲤屡。 我是一名探鬼主播,決...
    沈念sama閱讀 41,179評論 3 422
  • 文/蒼蘭香墨 我猛地睜開眼福侈,長吁一口氣:“原來是場噩夢啊……” “哼酒来!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起肪凛,我...
    開封第一講書人閱讀 40,124評論 0 277
  • 序言:老撾萬榮一對情侶失蹤堰汉,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后伟墙,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體翘鸭,經(jīng)...
    沈念sama閱讀 46,657評論 1 320
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,723評論 3 342
  • 正文 我和宋清朗相戀三年戳葵,在試婚紗的時候發(fā)現(xiàn)自己被綠了就乓。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 40,872評論 1 353
  • 序言:一個原本活蹦亂跳的男人離奇死亡拱烁,死狀恐怖生蚁,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情邻梆,我是刑警寧澤守伸,帶...
    沈念sama閱讀 36,533評論 5 351
  • 正文 年R本政府宣布,位于F島的核電站浦妄,受9級特大地震影響尼摹,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜剂娄,卻給世界環(huán)境...
    茶點故事閱讀 42,213評論 3 336
  • 文/蒙蒙 一蠢涝、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧阅懦,春花似錦和二、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,700評論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽惕它。三九已至,卻和暖如春废登,著一層夾襖步出監(jiān)牢的瞬間淹魄,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,819評論 1 274
  • 我被黑心中介騙來泰國打工堡距, 沒想到剛下飛機(jī)就差點兒被人妖公主榨干…… 1. 我叫王不留甲锡,地道東北人。 一個月前我還...
    沈念sama閱讀 49,304評論 3 379
  • 正文 我出身青樓羽戒,卻偏偏與公主長得像缤沦,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子易稠,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 45,876評論 2 361

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

  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理缸废,服務(wù)發(fā)現(xiàn),斷路器缩多,智...
    卡卡羅2017閱讀 134,716評論 18 139
  • 重要說明:本方是翻譯自https://docs.spring.io/spring-cloud-dataflow/d...
    靜悟2020閱讀 10,521評論 1 12
  • spring-boot-admin為我們基于spring-boot的基礎(chǔ)數(shù)據(jù)安全端口提供了基礎(chǔ)的可視化監(jiān)控功能呆奕。還...
    Comcen閱讀 10,432評論 8 22
  • 一、準(zhǔn)備搭建環(huán)境 1.系統(tǒng):CentOS 7.3 2.軟件:Zabbix 3.2 二衬吆、安裝前的準(zhǔn)備 最小化安裝Ce...
    塵世不擾閱讀 4,156評論 8 31
  • √學(xué)員情況: 校區(qū):科學(xué)創(chuàng)想機(jī)器人科學(xué)宮校區(qū) 時間:周日上午10點30-11點30 學(xué)員:小石頭梁钾,陽陽,小白逊抡,二寶...
    樂搭閱讀 4,262評論 0 0