Spring Boot 2.X 实战教程(19)终点
19.终点
通过执行器端点,您可以监控应用程序并与之交互。Spring Boot包含许多内置端点,允许您添加自己的端点。
可以启用或禁用每个端点。它控制是否创建端点并且其bean存在于应用程序上下文中。
大多数应用程序选择HTTP,其中端点的ID以及前缀/actuator 映射到URL。例如,默认情况下,health端点映射到 /actuator/health。
ID |
描述 |
默认情况下启用 |
auditevents |
公开当前应用程序的审核事件信息。 |
是 |
beans |
显示应用程序中所有Spring bean的完整列表。 |
是 |
caches |
暴露可用的缓存。 |
是 |
conditions |
显示在配置和自动配置类上评估的条件以及它们匹配或不匹配的原因。 |
是 |
configprops |
显示所有的整理列表@ConfigurationProperties。 |
是 |
env |
露出Spring的属性ConfigurableEnvironment。 |
是 |
flyway |
显示已应用的任何Flyway数据库迁移。 |
是 |
health |
显示应用健康信息。 |
是 |
httptrace |
显示HTTP跟踪信息(默认情况下,最后100个HTTP请求 - 响应交换)。 |
是 |
info |
显示任意应用信息。 |
是 |
integrationgraph |
显示Spring Integration图。 |
是 |
loggers |
显示和修改应用程序中记录器的配置。 |
是 |
liquibase |
显示已应用的任何Liquibase数据库迁移。 |
是 |
metrics |
显示当前应用程序的“指标”信息。 |
是 |
mappings |
显示所有@RequestMapping路径的整理列表。 |
是 |
scheduledtasks |
显示应用程序中的计划任务。 |
是 |
sessions |
允许从Spring Session支持的会话存储中检索和删除用户会话。使用Spring Session对响应式Web应用程序的支持时不可用。 |
是 |
shutdown |
允许应用程序正常关闭。 |
没有 |
threaddump |
执行线程转储。 |
是 |
如果您的应用程序是Web应用程序(Spring MVC,Spring WebFlux或Jersey),则可以使用以下附加端点:
ID |
描述 |
默认情况下启用 |
heapdump |
返回hprof堆转储文件。 |
是 |
jolokia |
通过HTTP公开JMX bean(当Jolokia在类路径上时,不适用于WebFlux)。 |
是 |
logfile |
返回日志文件的内容(如果已设置logging.file或logging.path属性)。支持使用HTTP Range标头检索部分日志文件的内容。 |
是 |
prometheus |
以可以由Prometheus服务器抓取的格式公开指标。 |
是 |
19.1启用端点
默认情况下,启用除shutdown外的所有端点。要配置端点的启用,请使用其management.endpoint.<id>.enabled属性。以下示例启用shutdown端点:
management.endpoint.shutdown.enabled = true
19.2公开端点
由于端点可能包含敏感信息,因此应仔细考虑何时公开它们。
要更改端点暴露,使用下面的特定技术include和 exclude特性:
该include属性列出了公开的端点的ID。该exclude 属性列出了不应公开的端点的ID。 该exclude 属性优先于该include属性。
*可用于选择所有端点。
例如,要通过HTTP公开除了env和beans端点之外的所有内容,请使用以下属性:
management.endpoints.web.exposure.include = *
management.endpoints.web.exposure.exclude = env,beans
如有疑问,请观看视频:https://ke.qq.com/course/428845