SpringBoot | 第七章:搭建SpringBoot監控中心Actuator
(一)、什麼是Actuator
Actuator是spring boot的一個附加功能,可幫助你在應用程式生產環境時監視和管理應用程式。可以使用HTTP的各種請求來監管,審計,收集應用的執行情況。Spring Boot Actuator提供了對單個Spring Boot的監控,資訊包含:應用狀態、記憶體、執行緒、堆疊等等,比較全面的監控了Spring Boot應用的整個生命週期。特別對於微服務管理十分有意義。
缺點:沒有視覺化介面。
解決:後面將要講到的Admin-UI解決彌補這一缺陷
(二)、基於SpringBoot2.0版本搭建SpringBoot 監控中心Actuator
2.1、建立一個Maven專案
2.1.1 建立maven骨架,勾選上,點選next
2.1.2 填寫Group ID和Artifact ID,點選finish就完成了一個簡單的maven專案建立
2.2、在pom.xml檔案引入SpringBoot2.0版本的Maven依賴資訊
<parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.0.0.RELEASE</version> </parent> <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-actuator</artifactId> </dependency> </dependencies> <!-- Mysql測試依賴資訊 --> <dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-spring-boot-starter</artifactId> <version>1.1.1</version> </dependency> <!-- mysql 依賴 --> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> </dependency>
2.3 新建專案結構為如下
2.3.1 編寫yml檔案
2.3.2 SpringBoot啟動類註解配置
2.3.3 編寫一個測試controller
(三)、啟動SpringBoot專案,檢視Console控制檯,Actuator介面許可權資訊
3.1 啟動檢視
說明: 預設情況下,在不配置啟用所有監控站點時,值擁有3個介面的監控許可權,在application.yml裡配置下面這行之後,將啟用所有監控站點。
management:
endpoints:
web:
exposure:
include: "*"
3.2 由於Actuator是沒有視覺化介面的,這裡我們通過訪問介面的形式來呼叫一下監控的介面
Actuator訪問路徑
通過actuator/+端點名就可以獲取相應的資訊。
路徑 |
作用 |
/actuator/beans |
顯示應用程式中所有Spring bean的完整列表。 |
/actuator/configprops |
顯示所有配置資訊。 |
/actuator/env |
陳列所有的環境變數。 |
/actuator/mappings |
顯示所有@RequestMapping的url整理列表。 |
/actuator/health |
顯示應用程式執行狀況資訊 up表示成功 down失敗 |
/actuator/info |
檢視自定義應用資訊 |
3.3 訪問介面 /actuator/beans ,檢視監控到的Spring容器 所有的bean
3.1.1 訪問/actuator/beans
3.1.2 訪問/actuator/info
專案原始碼 :https://github.com/Thinkingcao/Actuator
搭建完Actuator監控中心之後,由於沒有視覺化介面,很不爽,下一篇SpringBoot Admin彌補這一不足 (類似Jconsole)