SpringBoot学习之路---SpringBoot与它的监控端点们

SpringBoot为我们提供了监控管理的功能,我们可以通过一些http请求从而方便地观察当前应用程序的状态,这一篇就来记录一下 SpringBoot和它的监控端点们。


首先,还是那句话,需要什么功能就引入对应功能的starter,这里我们直接通过spring initializr来创建项目并引入依赖:

SpringBoot学习之路---SpringBoot与它的监控端点们_第1张图片

其中devtools是引入热部署,方便测试修改。web是为了直观看到(也必须要),actuator就是监控管理的依赖了。

创建完项目后,直接启动,然后在控制台会看到:

2020-05-11 09:11:18.969  INFO 1118 --- [  restartedMain] o.s.b.a.e.web.EndpointLinksResolver      : Exposing 2 endpoint(s) beneath base path '/actuator'

可以通过访问/actuator这个路径,从而得到其他的监控端点访问路径:

在这里插入图片描述

目前有这么多监控端点可用,如果需要用到一些别的,我们需要去全局配置文件(application.yaml)配置端点全暴露:

#开放所有监控端口
management:
  endpoints:
    web:
      exposure:
        include: '*'

之后重新编译程序,再去访问localhost:8080/actuator :

在这里插入图片描述

这些都是我们可以访问的端点,举个例子,我们访问localhost:8080/actuator/beans ,这个作用是显示当前ioc容器中有多少个组件,并显示出组件的具体信息:

SpringBoot学习之路---SpringBoot与它的监控端点们_第2张图片

其他的就不做举例了,这里有一张表格,显示各个端点有什么用:

SpringBoot学习之路---SpringBoot与它的监控端点们_第3张图片

值得一提的是,有一个/actuator/shutdown,通过这个端口,可以直接关闭应用(这个挺猛,hhh),但是使用它前要先去配置文件中配置,把这个端口打开:

management:
	endpoints:
	  shutdown:
	    enabled: true

之后重新编译项目,这个端点需要post请求发送,可以使用类似postman的软件来进行发送,这里我用idea的restclient插件来发送post请求到localhost:8080/actuator/shutdown:

SpringBoot学习之路---SpringBoot与它的监控端点们_第4张图片

可以看到服务器被它关闭了。

不仅如此,使用这个组件可以很方便的来监控程序的实时状态。

你可能感兴趣的:(SpringBoot)