最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Springboot actuator應用后臺監(jiān)控實現(xiàn)

 更新時間:2020年04月22日 10:49:22   作者:知識追尋者  
這篇文章主要介紹了Springboot actuator應用后臺監(jiān)控實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下

一 前言

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

二 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;結(jié)果如下,狀態(tài)是UP;


翻翻源碼heath狀態(tài)碼如下

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

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

management: endpoint: health: show-details: always

打印詳細信息:


基本配置如下:

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

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

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


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

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

展示結(jié)果如下:

四 HTTP端點說明

端點 端點描述 默認值
auditevents 當前應用的審計事件 Yes
beans 顯示spring IOC 容器加載的所有bean Yes
caches 顯示可獲得的緩存 Yes
conditions 顯示自動配置通過condition判斷匹配或者不匹配的配置信息 Yes
configprops 顯示 通過 @ConfigurationProperties 配置的屬性信息 Yes
env spring環(huán)境變量屬性信息 Yes
flyway 顯示flyway 配置數(shù)據(jù)庫已經(jīng)遷移的信息 Yes
health 顯示應用的健康信息 Yes
httptrace 顯示 HTTP 軌跡信息默認最新的100 HTTP request或response Yes
info 顯示自定義的應用信息 Yes
integrationgraph 顯示spring 整合 graph 信息 Yes
loggers 顯示配置文件中日志修改信息 Yes
liquibase 顯示 任意的 Liquibase 數(shù)據(jù)庫已經(jīng)遷移的信息 Yes
metrics 顯示當前應用的指標 Yes
mappings 顯示 @RequestMapping paths. 配置的路徑信息 Yes
scheduledtasks 顯示任務調(diào)度信息 Yes
sessions 刪除或者恢復Spring Session會話,不支持web響應式編程 Yes
shutdown 關閉應用 No
threaddump 執(zhí)行一個線程轉(zhuǎn)儲 Yes

五 配置開啟端點

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

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

5.1 threaddump示例

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

{
	"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,部分內(nèi)容如下;

{
	"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
  # 自定義配置監(jiān)控路徑
  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

結(jié)果如下

八 其他配置說明

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

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

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

以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關文章

  • Java經(jīng)典排序算法之插入排序代碼實例

    Java經(jīng)典排序算法之插入排序代碼實例

    這篇文章主要介紹了Java經(jīng)典排序算法之插入排序代碼實例,插入排序是一種最簡單直觀的排序算法,它的工作原理是通過構(gòu)建有序序列,對于未排序數(shù)據(jù),在已排序序列中從后向前掃描,找到相應位置并插入,需要的朋友可以參考下
    2023-10-10
  • Java動態(tài)代理Proxy應用和底層源碼詳細分析

    Java動態(tài)代理Proxy應用和底層源碼詳細分析

    Java動態(tài)代理是一種在運行時生成代理類的機制,用于代替手動編寫代理類的過程,這篇文章主要給大家介紹了關于Java動態(tài)代理Proxy應用和底層源碼詳細分析的相關資料,需要的朋友可以參考下
    2024-03-03
  • 詳解Java中Period類的使用方法

    詳解Java中Period類的使用方法

    Period類通過年、月、日相結(jié)合來描述一個時間量,最高精度是天。本文將通過示例詳細為大家講講Period類的使用,需要的可以參考一下
    2022-05-05
  • SpringIOC refresh()初始化代碼實例

    SpringIOC refresh()初始化代碼實例

    這篇文章主要介紹了SpringIOC refresh()初始化代碼實例,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-03-03
  • Springboot整合Activiti操作詳解

    Springboot整合Activiti操作詳解

    這篇文章主要給大家詳細介紹了Springboot整合Activiti的操作流程,文中流程步驟和代碼示例介紹的非常詳細,具有一定的參考價值,需要的朋友可以參考下
    2023-07-07
  • Java實現(xiàn)按行分割大文件

    Java實現(xiàn)按行分割大文件

    這篇文章主要為大家詳細介紹了Java實現(xiàn)按行分割大文件,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-05-05
  • java對接支付寶支付接口簡單步驟記錄

    java對接支付寶支付接口簡單步驟記錄

    最近項目APP需要接入微信、支付寶支付功能,在分配開發(fā)任務時,聽說微信支付接口比支付寶支付接口要難實現(xiàn),這篇文章主要給大家介紹了關于java對接支付寶支付接口的簡單步驟,需要的朋友可以參考下
    2024-05-05
  • SpringBoot中@FeignClient 注解的作用

    SpringBoot中@FeignClient 注解的作用

    Feign可以幫助我們定義和實現(xiàn)服務之間的 RESTful 接口,使得服務之間的調(diào)用更加方便和可靠,本文主要介紹了SpringBoot中@FeignClient 注解的作用,感興趣的可以了解一下
    2024-06-06
  • Java中關于MouseWheelListener的鼠標滾輪事件詳解

    Java中關于MouseWheelListener的鼠標滾輪事件詳解

    這篇文章主要介紹了Java中關于MouseWheelListener的鼠標滾輪事件詳解,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-12-12
  • Java 實戰(zhàn)項目錘煉之醫(yī)院門診收費管理系統(tǒng)的實現(xiàn)流程

    Java 實戰(zhàn)項目錘煉之醫(yī)院門診收費管理系統(tǒng)的實現(xiàn)流程

    讀萬卷書不如行萬里路,只學書上的理論是遠遠不夠的,只有在實戰(zhàn)中才能獲得能力的提升,本篇文章手把手帶你用java+html+jdbc+mysql實現(xiàn)一個醫(yī)院門診收費管理系統(tǒng),大家可以在過程中查缺補漏,提升水平
    2021-11-11

最新評論

闸北区| 潍坊市| 克什克腾旗| 许昌县| 乌拉特后旗| 偏关县| 津市市| 龙江县| 山东省| 岗巴县| 阳信县| 赤峰市| 咸丰县| 石屏县| 留坝县| 同江市| 连州市| 大渡口区| 洪洞县| 都兰县| 读书| 石棉县| 永泰县| 娱乐| 大石桥市| 惠水县| 海阳市| 磐安县| 甘德县| 玉溪市| 峨山| 石首市| 同江市| 偃师市| 吉林省| 英山县| 格尔木市| 灵寿县| 庐江县| 石嘴山市| 长武县|