亚洲精品久久久中文字幕-亚洲精品久久片久久-亚洲精品久久青草-亚洲精品久久婷婷爱久久婷婷-亚洲精品久久午夜香蕉

您的位置:首頁技術文章
文章詳情頁

Springboot actuator應用后臺監控實現

瀏覽:92日期:2023-05-22 11:05:56

一 前言

springboot 額外的特色是提供了后臺應用監控,可以通過 HTTP 或者 JMX的方式管理監控應用,本文主講HTTP方式;其主要的功能是監控應用的健康狀態,查看環境變量等;

二 pom.xml

springboot 2.1.1,主要引入 actuator 依賴,web依賴用于測試;

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

三 默認開啟端點

3.1 默認端點 health

直接編寫主程序入口,啟動;瀏覽器輸入 http://localhost:8080/actuator/health;結果如下,狀態是UP;

Springboot actuator應用后臺監控實現

翻翻源碼heath狀態碼如下

public OrderedHealthAggregator() { this.setStatusOrder(Status.DOWN, Status.OUT_OF_SERVICE, Status.UP, Status.UNKNOWN); } DOWN 服務無法獲得,狀態碼503; .OUT_OF_SERVICE 服務無法獲得,狀態碼503; UP 獲得服務,狀態碼200; UNKNOWN 獲得未知服務,狀態碼200;

在 application.yml 中配置 healthy 信息 示例如下:

management: endpoint: health: show-details: always

打印詳細信息:

Springboot actuator應用后臺監控實現

基本配置如下:

never :默認,表示不顯示詳細信息;when-authorized:詳細信息顯示給 認證過的用戶;使用

management.endpoint.health.roles 配置always: 顯示詳細信息給所有用戶3.2 默認端點 info

瀏覽器輸入 http://localhost:8080/actuator/info; 展示空信息如下圖:

Springboot actuator應用后臺監控實現

在application.yml 中 配置工程 info 信息 示例如下;

#配置信息info: actuator: name: springboot-actutor version: 1.0.0 author: zszxz

展示結果如下:

Springboot actuator應用后臺監控實現

四 HTTP端點說明

端點 端點描述 默認值 auditevents 當前應用的審計事件 Yesbeans 顯示spring IOC 容器加載的所有bean Yescaches 顯示可獲得的緩存 Yesconditions 顯示自動配置通過condition判斷匹配或者不匹配的配置信息 Yesconfigprops 顯示 通過 @ConfigurationProperties 配置的屬性信息 Yesenv spring環境變量屬性信息 Yesflyway 顯示flyway 配置數據庫已經遷移的信息 Yeshealth 顯示應用的健康信息 Yeshttptrace 顯示 HTTP 軌跡信息默認最新的100 HTTP request或response Yesinfo 顯示自定義的應用信息 Yesintegrationgraph 顯示spring 整合 graph 信息 Yesloggers 顯示配置文件中日志修改信息 Yesliquibase 顯示 任意的 Liquibase 數據庫已經遷移的信息 Yesmetrics 顯示當前應用的指標 Yesmappings 顯示 @RequestMapping paths. 配置的路徑信息 Yesscheduledtasks 顯示任務調度信息 Yessessions 刪除或者恢復Spring Session會話,不支持web響應式編程 Yesshutdown 關閉應用 Nothreaddump 執行一個線程轉儲 Yes

五 配置開啟端點

application.yml 中配置需要開啟的端點,其中 * 表示開啟所有端點,示例如下:

management: endpoints: web: exposure: # 使用通配符 * 表示匹配所有端點 # 排除的端點 exclude: caches # 包括的端點 include: info,health,beans,env,shutdown,threaddump

5.1 threaddump示例

http://localhost:8080/actuator/threaddump ;用于返回線程快照,分析線程阻塞,死鎖等,部分內容如下

{'threads': [{'threadName': 'DestroyJavaVM','threadId': 41,'blockedTime': -1,'blockedCount': 0,'waitedTime': -1,'waitedCount': 0,'lockName': null,'lockOwnerId': -1,'lockOwnerName': null,'inNative': false,'suspended': false,'threadState': 'RUNNABLE','stackTrace': [],'lockedMonitors': [],'lockedSynchronizers': [],'lockInfo': null}

5.2 beans示例

http://localhost:8080/actuator/beans ; 用于返回 spring 容器加載的所有bean,部分內容如下;

{'contexts': {'application': {'beans': {'endpointCachingOperationInvokerAdvisor': {'aliases': [],'scope': 'singleton','type': 'org.springframework.boot.actuate.endpoint.invoker.cache.CachingOperationInvokerAdvisor','resource': 'class path resource [org/springframework/boot/actuate/autoconfigure/endpoint/EndpointAutoConfiguration.class]','dependencies': ['environment']},'defaultServletHandlerMapping': {'aliases': [],'scope': 'singleton','type': 'org.springframework.web.servlet.HandlerMapping','resource': 'class path resource [org/springframework/boot/autoconfigure/web/servlet/WebMvcAutoConfiguration$EnableWebMvcConfiguration.class]','dependencies': []}

5.3 關閉應用示例

普通情況下是沒有開啟這個配置,是比較危險的動作,會導致應用停止;修改application.yml配置如下

management: endpoints: web: exposure: # 使用通配符 * 表示匹配所有端點 # 排除的端點 exclude: caches # 包括的端點 include: info,health,beans,env,shutdown endpoint: health: show-details: always # 開啟關閉應用 需要post請求 shutdown: enabled: true

訪問地址 http://localhost:8080/actuator/shutdown; 注意僅支持使用POST請求,否則 會 405錯誤;

六 CORS 支持

application.yml 修改配置如下, allowed-origins 中允許跨域的ip地址; allowed-methods 配置 允許通過的請求,還有支持時間等;

management: endpoints: web: exposure: # 使用通配符 * 表示匹配所有端點 # 排除的端點 exclude: caches # 包括的端點 include: info,health,beans,env,shutdown # 跨域處理 cors: allowed-origins: http://localhost:8080/ allowed-methods: post,delete,get,put endpoint: health: show-details: always # 開啟關閉應用 需要post請求 shutdown: enabled: true

七 修改默認路徑

在 配置文件中添加 base-path , 會修改掉默認路徑 actuator/endpoint;

management: endpoints: web: exposure: # 使用通配符 * 表示匹配所有端點 # 排除的端點 exclude: caches # 包括的端點 include: info,health,beans,env,shutdown # 自定義配置監控路徑 base-path: /zszxz # 跨域處理 cors: allowed-origins: http://localhost:8080/ allowed-methods: post,delete,get,put endpoint: health: show-details: always # 開啟關閉應用 需要post請求 shutdown: enabled: true

示例url: http://localhost:8080/zszxz/info

結果如下

Springboot actuator應用后臺監控實現

八 其他配置說明

還可以引入 security 依賴 配置 賬號密碼,角色信息,達到訪問控制,詳細的可以參照官網;

還可以使用注解進行配置,自定義端點,詳細參照官網;

jmx支持,可以使用open jdk 自帶的工具 jconsole 進行監控;

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持好吧啦網。

標簽: Spring
相關文章:
主站蜘蛛池模板: 国产三级视频在线播放 | 午夜羞羞视频在线观看 | 18到20岁女人毛片一区 | 久久综合九色婷婷97 | 国产色婷婷亚洲 | 久久成人精品视频 | 日韩精品一级a毛片 | 成人18xxxx网站| 婬荡少妇21p| 亚洲国产精品线在线观看 | aaaaaa精品视频在线观看 | 国产黄拍| 麻豆传媒网站入口直接进入免费版 | 欧美视频在线看 | 欧美黄三级在线观看 | 青草视频在线观看免费 | 中国人免费观看高清在线观看二区 | 国产精品欧美一区二区三区不卡 | 亚洲色图首页 | 97色婷婷成人综合在线观看 | 在线观看香蕉视频 | 一级毛片成人免费看免费不卡 | 色伊人色成人婷婷六月丁香 | 日韩第一区 | 可以在线看黄的网站 | 国产综合福利 | 国产传媒网址 | 免费看黄大全 | 免费看a级毛片 | 午夜激情影院 | 尤物视频网站在线观看 | 尤物tv在线| 国产一级特黄aa大片软件 | 午夜影院一区二区 | 欧美激情人成日本在线视频 | 久久人人爽人人爽人人片av不 | 亚洲第一视频在线 | 亚洲 欧美 日韩 另类 | 嫩草影院麻豆久久视频 | 国产精品亚洲va在线观看 | 国产一级毛片外aaaa |