每天學點SpringCloud(十):SpringCloud監控
阿新 • • 發佈:2018-12-01
今天我們來學習一下actuator這個元件,它不是SpringCloud之後才有的,而是SpringBoot的一個starter,Spring Boot Actuator。我們使用SpringCloud的時候需要使用這個元件對應用程式進行監控與管理
在SpringBoot2.0版本中,actuator可以為我們提供以下端點:
訪問路徑 | 描述 |
---|---|
/actuator/auditevents | 顯示當前應用程式的審計事件資訊 |
/actuator/beans | 顯示一個應用中所有Spring Beans的完整列表 |
/actuator/conditions | 顯示配置類和自動配置類的狀態及它們被應用或未被應用的原因 |
/actuator/configprops | 顯示一個所有@ConfigurationProperties的集合列表 |
/actuator/env | 顯示來自Spring的 ConfigurableEnvironment的屬性 |
/actuator/features | 顯示系統啟動的一些features |
/actuator/health | 顯示應用的健康資訊 |
/actuator/httptrace | 最後100個HTTP請求 |
/actuator/info | 顯示任意的應用資訊 |
/actuator/metrics | 展示當前應用的metrics資訊 |
/actuator/mappings | 顯示一個所有@RequestMapping路徑的集合列表 |
/actuator/refresh | 更新配置 |
/actuator/scheduledtasks | 顯示應用程式中的定時任務 |
/actuator/service-registry | 當前應用在註冊中心的狀態 |
/actuator/shutdown | 允許應用以優雅的方式關閉 |
/actuator/threaddump | 執行一個執行緒dump |
/actuator/heapdump | 返回一個GZip壓縮的hprof堆dump檔案 |
/actuator/loggers | 返回系統的一些日誌 |
雖然actuator預設給我們提供了這麼多的端點供我們使用,但是為了安全起見,在SpringBoot2.0中它僅僅開放了health和info兩個埠,如果想要使用其他的埠就需要我們增加一些配置了,一起來看一下如何使用actuator吧。
1. 引入依賴
1 |
<dependency> |
2. 修改配置檔案
1 |
management: |
這個時候我們使用postman等介面呼叫工具訪問 ip:埠/actuator 這個路徑時就會得到下圖所示的這麼一個json串,這個json串中就是對應的各個端點的地址資訊。
3. 健康檢查
預設我們訪問/actuator/health得到的只是一個狀態值,其實它的詳細資訊裡包含了很多有用的東西,比如說檢查磁碟空間、DataSource的連線、Elasticsearch、Mongo、Rabbit、Redis等資訊,我們可以通過如下配置來開啟詳細的健康檢查:
1 |
management: |
不僅如此,健康檢查的指標我們還可以自定義,建立如下的一個bean提供健康檢查的功能。
1 |
|
此時我們訪問 ip:埠/actuator/health 訪問時可能就會根據連線時間呈現下方的兩種狀態
GitHub地址:https://github.com/2388386839/spring-cloud-demo。程式碼所在模組:cloud-demo-consumer-feign
如果對您有所幫助,請記得幫忙點一個star哦
本文出自http://zhixiang.org.cn,轉載請保留。