springboot 四大组件

1.starter组件

        starter包的内容就是pom文件,就是一个依赖传递包。 帮我们封装好了所有需要的依赖,避免我们自己添加导致的一些Jar包冲突或者缺少包的情况.这些Starters作为Spring相关技术的引导过程,我们 不再需要担心依赖关系,它们将由Spring Boot Starters自动管理。

2.Autoconfigure 组件

autoconfigure就是帮我们自动把bean注入到IOC容器中。

3.actuator组件

actuator是Spring Boot的监控插件,本身提供了很多接口可以获取当前项目的各项运行状态指标。

4. Spring Boot CLI组件

        我们用的比较少,所以就不多赘述了。个人感觉比较好用的功能就是命令行直接执行groovy脚本了。

5. actuator详解

       Actuator端点可以监控应用程序并与之交互。Spring Boot包括许多内置的端点,
比如health端点提供基本的应用程序运行状况信息,并允许添加自定义端点。
可以控制每个单独的端点启用或禁用,也可以通过include和exclude属性通配,
这会影响端点的Bean创建。这会影响端点的Bean创建。要远程访问端点,还必须通过JMX或HTTP公开。
大多数应用程序选择HTTP,其中/actuator前缀和端点的ID组成了对外暴露的URL。
比如默认情况下,health端点映射到/actuator/health。

5.1 actuator支持的端点

ID 描述 JMX(是否默认开启) HTTP(是否默认开启)
auditevents 公开当前应用程序的审核事件信息。 Yes No
beans 显示应用程序中所有Spring bean的完整列表。 Yes No
caches 公开可用的缓存。 Yes No
conditions 显示在配置和自动配置类上评估的条件,以及它们匹配或不匹配的原因。 Yes No
configprops 显示所有@ConfigurationProperties的整理列表。 Yes No
env 从Spring的ConfigurableEnvironment中公开属性。 Yes No
flyway 显示已应用的所有Flyway数据库迁移。 Yes No
health 显示应用程序运行状况信息。 Yes Yes
heapdump 返回hprof堆转储文件。
httptrace 显示HTTP跟踪信息(默认情况下,最后100个HTTP请求-响应交换)。 Yes No
info 显示任意应用程序信息。 Yes Yes
integrationgraph 显示Spring集成图。 Yes No
jolokia 通过HTTP公开JMX bean(当Jolokia在类路径上时,WebFlux不可用)。
logfile 返回日志文件的内容(如果已设置logging.file或logging.path属性)。支持使用 HTTP Range 头来检索日志文件的部分内容。
loggers 显示和修改应用程序中记录器的配置。 Yes No
liquibase 显示已应用的任何Liquibase数据库迁移。 Yes No
metrics 显示当前应用程序的"度量"信息。 Yes No
mappings 显示所有@RequestMapping路径的整理列表。 Yes No
prometheus 以Prometheus服务器可以抓取的格式公开度量。
scheduledtasks 显示应用程序中的计划任务。 Yes No
sessions 允许从支持Spring Session的会话存储中检索和删除用户会话。在使用Spring Session对反应式web应用程序的支持时不可用。 Yes No
shutdown 允许优雅地关闭应用程序。 Yes No
threaddump 执行线程转储。 Yes No

通过include和exclude属性控制节点的开启

属性 默认
management.endpoints.jmx.exposure.exclude
management.endpoints.jmx.exposure.include *
management.endpoints.web.exposure.exclude
management.endpoints.web.exposure.include info, health

5.2  暴露所有端点信息

#暴露所有端点信息
management.endpoints.enabled-by-default=true
#以WEB方式暴露
management.endpoints.web.exposure.include=*

5.3只暴露部分端点

#关闭暴露所有端口
management.endpoints.enabled-by-default=false
#公开所有端点,除了env端点,并且启用beans和caches端点
management.endpoint.beans.enabled=true
management.endpoint.caches.enabled=true
management.endpoints.web.exposure.include=*
management.endpoints.web.exposure.exclude=env

5.4 查看所有公开端点

访问http://localhost:8011/actuator就可以看到公共的端点

参考:

SpringBoot集成Actuator端点配置_木木与呆呆的博客-CSDN博客

Springboot使用Actuator健康监控以及可视化界面_LoneWalker、的博客-CSDN博客

 

你可能感兴趣的:(Spring,Boot,spring,boot)