springboot 07 Spring Boot Actuator: Production-ready features
Spring Boot Actuator: Production-ready features
當你的應用釋出後,spring-boot包含很多的功能來幫你監控和管理應用;你可以選擇通過http,JMX,或者一些遠端的shell
1. Enabling production-ready features
spring-boot-actuator 提供了spring boot所有的監控管理功能。最簡單的安裝方式是新增依賴spring-boot-starter-actuator。
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
</dependency>
</dependencies>
2. Endpoints
Actuator endpoints 允許你監控管理你的應用,Spring-boot已經內嵌了一系列的endpoints。使用什麼方式來展示這些監控資訊依賴於你選擇的什麼技術,大多數情況會選擇HTTP monitoring,每一個endpoint有一個id,對映到url。eg: health endpoint will be mapped to /health.
下面將展示出提供的監控以及ID:
ID Description Sensitive Default
actuator 展示其他的endpoints. 需要Spring HATEOAS在classpath. true
autoconfig 顯示自動配置報表,展示所有自動配置的條件以及原因 true
beans 顯示出Spring 容器中所有的Bean資訊 true
configprops 顯示出所有的配置資訊 true
dump 執行一次執行緒快照 true
env 的引數 true
flyway Shows any Flyway database migrations that have been applied. true
health 展示出應用當前的健康資訊 false
info 當前應用的資訊 false
liquibase Shows any Liquibase database migrations that have been applied. true
metrics 顯示當前應用的JVM資訊,記憶體情況,GC… true
mappings 列出當前應用的 true
shutdown 執行引用被優雅的shutdown true
trace 顯示最近的請求資訊,預設儲存最近100條 HTTP requests true
如果你使用的是 Spring Mvc,還有一些額外的endpoints可以使用:
ID Description Sensitive Default
docs 需要 false
heapdump hprof true
jolokia Exposes JMX beans over HTTP (when Jolokia is on the classpath). true
logfile properties have been set). Supports the use of the HTTP true
Sensitive 的意思是說 是否敏感,在一些web security開啟的情況下,Sensitive為true的endpoint需要輸入username/password才能夠檢視
2.1 Customizing endpoints
endpoint能夠被自定義,在application.properties中配置,eg:
endpoints.beans.id=springbeans #修改id
endpoints.beans.sensitive=false #是否敏感
endpoints.shutdown.enabled=true #是否開啟
2.2 CORS support
endpoints.cors.allowed-origins=http://example.com
endpoints.cors.allowed-methods=GET,POST
2.3 Adding custom endpoints
2.4 Securing sensitive endpoints
如果你專案中使用到了Spring-security,那麼所有敏感的endpoint都將會保護起來,需要使用username and password才能夠訪問
security.user.name=admin
security.user.password=secret
management.security.roles=SUPERUSER
2.5 Customizing the management endpoint paths
有時候你需要分組管理endpoint,使用一個單獨的path,eg:如果你專案中已經存在了一個/info,你可以使用management.context-path配置一個字首
management.context-path=/manage
The application.properties example above will change the endpoint from /{id} to /manage/{id} (e.g./manage/info).
endpoints.{name}.id : 修改id
endpoints.{name}.path:修改path eg:endpoints.health.path=/ping/me => /ping/me
2.6 Customizing the management server port
management.port=8081 : 配置 Managerment server的埠
management.security.enabled=false : 不使用安全管理,即使專案中使用了spring-security,也不使用username ,password
management.address=127.0.0.1
management.port=-1 : disabling HTTP endpoints
The end
相關文章
- spring-boot-actuatorSpringboot
- Spring Boot Actuator 整合 PrometheusSpring BootPrometheus
- springMVC中增加spring-boot-actuatorSpringMVCboot
- Spring Boot Actuator詳解與深入應用(二):Actuator 2.xSpring Boot
- Spring Boot Actuator詳解與深入應用(一):Actuator 1.xSpring Boot
- 備忘錄二:Spring Boot Actuator+Prometheus+GrafanaSpring BootPrometheusGrafana
- 系統健康檢查利器-Spring Boot-ActuatorSpring Boot
- SpringBoot:定製 ActuatorSpring Boot
- Spring Boot透過Actuator顯示git和build的資訊Spring BootGitUI
- 跟我學Spring Cloud(Finchley版)-03-監控:強大的Spring Boot ActuatorCloudSpring Boot
- 朱曄和你聊Spring系列S1E7:簡單好用的Spring Boot ActuatorSpring Boot
- springboot(十八):使用Spring Boot整合FastDFSSpring BootAST
- 使用SpringBoot Actuator監控應用Spring Boot
- SpringBoot Actuator — 埋點和監控Spring Boot
- springboot(十一):Spring boot中mongodb的使用Spring BootMongoDB
- Spring Boot Actuator詳解與深入應用(三):Prometheus+Grafana應用監控Spring BootPrometheusGrafana
- SpringBoot整合Actuator進行健康監控Spring Boot
- springboot 接入shardingsphere-jdbc-core-spring-boot-starterSpring BootJDBC
- SpringBoot如何優雅關閉(SpringBoot2.3&Spring Boot2.2)Spring Boot
- 【web】springboot應用增加actuator管理端點WebSpring Boot
- SpringBoot如何利用Actuator來監控應用?Spring Boot
- SpringBoot詳解(三)-Spring Boot的web開發Spring BootWeb
- springcloud學習筆記(五)Spring Cloud ActuatorSpringGCCloud筆記
- springboot junit Unit-Testing(via spring-boot-starter-test)Spring Boot
- 從nacos-spring-boot-project角度全面看Springboot StarterProjectSpring Boot
- 一、快速構建Spring Boot專案【springboot記錄】Spring Boot
- 深入理解SpringBoot核心機制《spring-boot-starter》Spring Boot
- spring boot 系列之八:SpringBoot處理定時任務Spring Boot
- Spring Boot:Spring Boot配置MybatisSpring BootMyBatis
- Spring Boot:Spring Boot配置SwaggerSpring BootSwagger
- 07SpringBoot整合SwaggerSpring BootSwagger
- Spring07:AOPSpring
- Spring Boot2 系列教程(十七)SpringBoot 整合 Swagger2Spring BootSwagger
- springboot gradle demo (使用 Gradle 構建的 Spring Boot專案)Spring BootGradle
- 聊聊springboot專案如何實現自定義actuator端點Spring Boot
- spring、spring MVC、spring BootMVCSpring Boot
- Spring Boot系列十九 Spring boot整合 swaggerSpring BootSwagger
- Spring Boot 參考指南(Spring Boot文件)Spring Boot