javascript
Spring Boot之程序性能监控
轉載自?Spring Boot之程序性能監控
Spring Boot特別適合團隊構建各種可快速迭代的微服務,同時為了減少程序本身監控系統的開發量,Spring Boot提供了actuator模塊,可以很方便的對你的Spring Boot程序做監控。
1. actuator接口說明
Spring Boot應用中加入監控很簡單,只需要在pom.xml文件中加入以下依賴:
<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-actuator</artifactId> </dependency>為了保證actuator接口的敏感性,在配置文件中,開放安全屬性配置:
management.security.enabled=false這樣就能允許你查看Spring Boot進程的actuator信息了。
啟動Spring Boot程序,在啟動日志里看到可訪問的actuator接口:
通過這些,我們可以實時的獲取應用的各項監控指標。
actuator的接口分為原生接口和用戶自定義接口。原生接口主要有如下幾個:
| /health | 展示了進程的健康狀態 |
| /beans | 程序創建的Bean |
| /configprops | 配置信息,屬性值 |
| /env | 環境屬性 |
| /info | info開頭的程序屬性信息 |
| /metrics | 度量指標,比如JVM和HTTP請求等 |
| /trace | HTTP的詳細請求信息 |
| /mappings | 所有的URL路徑映射關系 |
| /dump | 線程快照信息 |
| /heapdump | 內存快照信息 |
如果你想關閉某個接口,比如關閉health接口,可以直接設置:
endpoints.health.enabled=false2. 監控展示
2.1 JConsole
JConsole是一個內置Java性能分析器,如果你本機已經配置了jdk的話,可直接命令行輸入jconsole,打開后的頁面如下圖所示:
選擇你要監控的進程,點擊連接即可進入該Java進程的監控首頁,如下圖所示:
可以很詳細地展示進程的內存、CPU、類信息。
2.2 Spring Boot Admin
Spring Boot Admin是一款監控和管理Spring Boot應用程序的開源軟件。Spring Boot Admin讀取actuator的接口數據,并通過Spring Boot Admin UI將實時數據展示在前端。
創建一個Spring Boot Admin Server,首先需要創建一個基本的Spring Boot應用程序,這個就不做贅述了,并加入以下依賴:
<dependency><groupId>de.codecentric</groupId><artifactId>spring-boot-admin-server</artifactId><version>1.5.7</version> </dependency><dependency><groupId>de.codecentric</groupId><artifactId>spring-boot-admin-server-ui</artifactId><version>1.5.7</version> </dependency>server.port端口設置為8090,并注冊到你的eureka服務上。
啟動類中使用注解開啟服務:
@SpringBootApplication @EnableDiscoveryClient @EnableAdminServer @EnableTurbine public class HtsApplication {public static void main(String[] args) {SpringApplication.run(HtsApplication.class, args);} }瀏覽器訪問:http://localhost:8090 即可看到如下Spring Boot Admin Server的頁面:
在任意需要被監控的Spring Boot應用程序上,添加依賴:
<dependency><groupId>de.codecentric</groupId><artifactId>spring-boot-admin-starter-client</artifactId><version>1.5.7</version> </dependency>啟動客戶端后,稍等片刻,Spring Boot Admin Server從Eureka上拿到注冊信息后,即可在 http://localhost:8090 上看到應用程序的監控信息了:
3. FAQ
-
Spring Boot Admin Server上可以配置郵件告警信息,添加自己的Email即可收到告警信息。
-
Spring Boot Admin Server監控的應用程序服務,需要和Spring Boot Admin Server都注冊到Eureka上。
總結
以上是生活随笔為你收集整理的Spring Boot之程序性能监控的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Spring框架-事务管理注意事项
- 下一篇: 绘画电脑配置推荐(绘图电脑的配置)