本文概述
- Spring启动器
- 启用Spring启动执行器
- Spring启动执行器端点
- Spring启动执行器属性
Spring启动执行器功能
Spring Boot执行器具有三个主要功能:
- 终点
- 指标
- 审计
例如, / health端点提供应用程序的基本健康信息。执行器默认情况下将其映射到/ actuator / health。
度量:Spring Boot Actuator通过与千分尺集成来提供尺寸度量。千分尺已集成到Spring Boot中。它是工具库, 用于支持从Spring交付应用程序指标。它使用维度数据模型为计时器, 仪表, 计数器, 分布汇总和长任务计时器提供与供应商无关的接口。
审计:Spring Boot提供了一个灵活的审计框架, 该框架将事件发布到AuditEventRepository。如果正在执行spring-security, 它将自动发布身份验证事件。
启用Spring启动执行器 我们可以通过将依赖项spring-boot-starter-actuator注入pom.xml文件来启用执行器。
<
dependency>
<
groupId>
org.springframework.boot<
/groupId>
<
artifactId>
spring-boot-starter-actuator<
/artifactId>
<
version>
2.2.2.RELEASE<
/version>
<
/dependency>
Spring启动执行器端点 执行器端点使我们可以监视Spring Boot应用程序并与之交互。 Spring Boot包含许多内置端点, 我们还可以在Spring Boot应用程序中添加自定义端点。
下表描述了广泛使用的端点。
Id | Usage | Default |
---|---|---|
actuator | 它为其他端点提供了基于超媒体的发现页面。它要求Spring HATEOAS位于类路径上。 | True |
auditevents | 它公开了当前应用程序的审核事件信息。 | True |
autoconfig | 它用于显示自动配置报告, 该报告显示所有自动配置候选者以及” 应用” 或” 不” 应用它们的原因。 | True |
beans | 它用于显示应用程序中所有Spring Bean的完整列表。 | True |
configprops | 它用于显示所有@ConfigurationProperties的整理列表。 | True |
dump | 它用于执行线程转储。 | True |
env | 它用于从Spring的ConfigurableEnvironment中公开属性。 | True |
flyway | 它用于显示已应用的所有Flyway数据库迁移。 | True |
health | 它用于显示应用程序运行状况信息。 | False |
info | 用于显示任意应用程序信息。 | False |
loggers | 它用于显示和修改应用程序中记录器的配置。 | True |
liquibase | 它用于显示已应用的所有Liquibase数据库迁移。 | True |
metrics | 它用于显示当前应用程序的度量标准信息。 | True |
mappings | 它用于显示所有@RequestMapping路径的整理列表。 | True |
shutdown | 它用于允许正常关闭应用程序。 | True |
trace | 用于显示跟踪信息。 | True |
Id | Description | Default |
---|---|---|
docs | 它用于显示文档, 包括对执行器端点的示例请求和响应。 | False |
heapdump | 它用于返回GZip压缩的hprof堆转储文件。 | True |
jolokia | 它用于通过HTTP公开JMX bean(当Jolokia在类路径上时)。 | True |
logfile | 它用于返回日志文件的内容。 | True |
prometheus | 它用于以Prometheus服务器可以抓取的格式公开指标。它需要依赖千分尺-普罗米修斯。 | True |
management.security.enabled=truemanagement.security.roles=ADMINsecurity.basic.enabled=truesecurity.user.name=adminsecurity.user.passowrd=admin
Spring启动执行器示例
让我们通过示例了解执行器的概念。
步骤1:打开Spring Initializr https://start.spring.io/并创建一个Maven项目。
步骤2:提供群组名称。我们提供了com.srcmini。
第3步:提供工件ID。我们提供了spring-boot-actuator-example例子。
步骤4:添加以下依赖项:Spring Web, Spring Boot Starter启动器和Spring Data Rest HAL浏览器。
步骤5:点击Generate(生成)按钮。当我们单击Generate按钮时, 它将与项目相关的所有规范包装到Jar文件中, 并将其下载到我们的本地系统。
文章图片
步骤6:提取Jar文件并将其粘贴到STS工作区中。
步骤7:导入项目文件夹。
文件-> 导入-> 现有Maven项目-> 浏览-> 选择文件夹spring-boot-actuator-example-> 完成
导入需要一些时间。导入项目后, 我们可以在” 包资源管理器” 部分中看到项目目录。
文章图片
步骤8:创建一个Controller类。我们创建了名称为DemoRestController的控制器类。
DemoRestController.java
package com.srcmini;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
@RestControllerpublic class DemoRestController {@GetMapping("/hello")public String hello() {return "Hello User!";
}}
步骤9:打开application.properties文件, 并通过添加以下语句禁用执行器的安全性功能。
application.properties
management.security.enabled=false
步骤10:运行SpringBootActuatorExampleApplication.java文件。
步骤11:打开浏览器并调用URL http:// localhost:8080 / actuator。它返回以下页面:
{"_links":{"self":{"href":"http://localhost:8080/actuator", "templated":false}, "health":{"href":"http://localhost:8080/actuator/health", "templated":false}, "health-path":{"href":"http://localhost:8080/actuator/health/{*path}", "templated":true}, "info":{"href":"http://localhost:8080/actuator/info", "templated":false}}}
默认情况下, 该应用程序在端口8080上运行。执行器启动后, 我们可以看到通过HTTP公开的所有端点的列表。
让我们通过调用URL http:// localhost:8080 / actuator / health来调用运行状况端点。表示状态为UP。这意味着该应用程序运行状况良好且正在运行, 不会中断。
文章图片
同样, 我们可以调用其他端点来帮助我们监视和管理Spring Boot应用程序。
【Spring Boot Starter执行器介绍和用法】下载专案
推荐阅读
- 使用STS创建Spring Boot项目(图文详解)
- Spring Boot AOP介绍和用法全解
- Spring Boot注解介绍和用法详解
- 验证与验证测试有什么区别()
- Opencv-Android安装使用
- Android-Binder
- call,apply,bind
- spring 通用mapper的一些注解
- 安卓活动的启动模式