欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Spring Boot 注解方式自定義Endpoint詳解

 更新時間:2021年09月28日 15:43:04   作者:LightOfMiracle  
這篇文章主要介紹了Spring Boot注解方式自定義Endpoint詳解,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教

概述

在使用Spring Boot的時候我們經(jīng)常使用actuator,健康檢查,bus中使用/refresh等。這里記錄如何使用注解的方式自定義Endpoint。可用于滿足一些服務狀態(tài)監(jiān)控,或者優(yōu)雅停機等。

準備

Spring Boot項目,pom中加入:

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

編寫自定義Endpoint

@Configuration
@Endpoint(id = "my-endpoint")
public class MyEndpoint {
 
    @ReadOperation
    public Map<String, Object> endpoint() {
        Map<String, Object> map = new HashMap<>(16);
        map.put("message", "this is my endpoint");
        return map;
    }
}

配置

management.endpoints.web.exposure.include=my-endpoint

啟動&測試

啟動后可以看到日志:

Mapped "{[/actuator/my-endpoint],methods=[GET],produces=[application/vnd.spring-boot.actuator.v2+json || application/json]}" onto public java.lang.Object org.springframework.boot.actuate.endpoint.web.servlet.AbstractWebMvcEndpointHandlerMapping$OperationHandler.handle(javax.servlet.http.HttpServletRequest,java.util.Map<java.lang.String, java.lang.String>)

注意

  • @EndPoint中的id不能使用駝峰法,需要以-分割
  • @Spring Boot會去掃描@EndPoint注解下的@ReadOperation, @WriteOperation, @DeleteOperation注解,分別對應生成Get/Post/Delete的Mapping。注解中有個produces參數(shù),可以指定media type, 如:application/json等。

Spring Boot 常用endpoint的使用

Actuator

目的

  • 監(jiān)控并管理應用程序

監(jiān)控:讓我們?nèi)グl(fā)現(xiàn)和了解程序的運行狀況各種指標

管理:比如說通過Actuator去做一個shutdown功能,通過訪問一個特定的url去操作,默認是不開啟的,另外 還可以在運行的過程中 對日志進行調(diào)整

訪問方式

  • HTTP
  • JMX

默認 會把更多的 Actuator 暴露在JMX上面

依賴

  • spring-boot-starter-actuator

一些常用 Endpoint

只有health和info 默認是可以通過http 進行訪問的

  • shutdown 是默認不開啟的一個
  • threaddump 去看線程情況
  • Prometheus 雖然是默認開啟 但是 必須在pom文件上加入相關依賴 才能提供支持

如何訪問 Actuator Endpoint

HTTP 訪問

  • /actuator/<id >

端口與路徑

  • management.server.address=

Actuator Endpoint 發(fā)布的地址

  • management.server.port=

Actuator Endpoint 發(fā)布的端口號

  • management.endpoints.web.base-path=/actuator

自定義端口

  • management.endpoints.web.path-mapping.<id>=路徑

修改端點的訪問路徑(映射),端點默認使用的是它的 值

開啟 Endpoint

  • management.endpoint.<id>.enabled=true

開啟名為id的 Endpoint

  • management.endpoints.enabled-by-default=false

端點啟用是選擇性加入而不是選擇性排除。表示禁用了所有端點

暴露 Endpoint

  • management.endpoints.jmx.exposure.exclude=

jmx方式排除需要公開的端點

  • management.endpoints.jmx.exposure.include=*

jmx方式包含需要公開的端點

  • management.endpoints.web.exposure.exclude=

http方式排除需要公開的端點

  • management.endpoints.web.exposure.include=info, health

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關文章

  • SpringCloud的Config配置中心詳解

    SpringCloud的Config配置中心詳解

    這篇文章主要介紹了SpringCloud的Config配置中心詳解,SpringCloud Config為微服務架構(gòu)中的微服務提供集中化的外部配置支持,配置服務器為各個不同微服務應用的所有環(huán)境提供了一個中心化的外部配置,需要的朋友可以參考下
    2023-07-07
  • 解決springcloud中Feign導入依賴為unknow的情況

    解決springcloud中Feign導入依賴為unknow的情況

    這篇文章主要介紹了解決springcloud中Feign導入依賴為unknow的情況,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-03-03
  • Java8新特性Optional常用方法

    Java8新特性Optional常用方法

    optional類是Java8新增加的一個對象容器,主要的功能有對象的創(chuàng)建、獲取、判斷、過濾,映射等,下面這篇文章主要給大家介紹了關于Java8新特性Optional常用方法的相關資料,需要的朋友可以參考下
    2024-02-02
  • 深入理解java的異常情況

    深入理解java的異常情況

    在本篇文章里小編給大家分享了關于Java的異常類型的相關知識點內(nèi)容,有需要的朋友們跟著學習下,希望能夠給你帶來幫助
    2021-09-09
  • java發(fā)送郵件示例講解

    java發(fā)送郵件示例講解

    這篇文章主要為大家詳細介紹了java發(fā)送郵件示例的全過程,溫習郵件協(xié)議,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2016-03-03
  • SpringBoot配置使Mybatis打印SQL執(zhí)行時的實際參數(shù)值操作

    SpringBoot配置使Mybatis打印SQL執(zhí)行時的實際參數(shù)值操作

    這篇文章主要介紹了SpringBoot配置使Mybatis打印SQL執(zhí)行時的實際參數(shù)值操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-12-12
  • Java中接口和抽象類的區(qū)別與相同之處

    Java中接口和抽象類的區(qū)別與相同之處

    這篇文章主要介紹了Java中接口和抽象類的區(qū)別與相同之處,本文講解了抽象類的概念、接口的概念、接口和抽象類的區(qū)別與聯(lián)系等內(nèi)容,需要的朋友可以參考下
    2015-06-06
  • 深入了解Java中的過濾器Filter和監(jiān)聽器Listener

    深入了解Java中的過濾器Filter和監(jiān)聽器Listener

    這篇文章主要為大家詳細介紹了Java中的過濾器Filter和監(jiān)聽器Listener的使用以及二者的區(qū)別,文中的示例代碼講解詳細,需要的可以參考一下
    2022-06-06
  • Java實現(xiàn)LeetCode(報數(shù))

    Java實現(xiàn)LeetCode(報數(shù))

    這篇文章主要介紹了Java實現(xiàn)LeetCode(報數(shù)),本文通過使用java實現(xiàn)leetcode的報數(shù)題目和實現(xiàn)思路分析,需要的朋友可以參考下
    2021-06-06
  • JDBC連接數(shù)據(jù)庫步驟及基本操作示例詳解

    JDBC連接數(shù)據(jù)庫步驟及基本操作示例詳解

    這篇文章主要為大家介紹了JDBC連接數(shù)據(jù)庫步驟及基本操作示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-11-11

最新評論