SpringBoot实战(五):配置健康检查与监控

强烈推荐一个大神的人工智能的教程:http://www.captainbed.net/zhanghan

【前言】

        众所周知,系统预警是一件十分重要的事情,系统一旦出现宕机很有可能许多真金白银就进去了;做好系统的监控预警是一件十分有必要的事情;接下来分享一下SpringBoot自带的健康检查与监控的配置。

【配置】

         一、说明

                1、项目类型:SpringBoot项目;

                2、SpringBoot的版本 2.0之前 与 2.0之后 分别都是如何配置;

                3、我们项目中是如何配置基础系统监控;

        二、Pom中添加监控依赖

<dependency>
     <groupId>org.springframework.boot</groupId>
     <artifactId>spring-boot-starter-actuator</artifactId>
</dependency>

        三、SpringBoot 2.0之前配置

                1、在配置文件中添加

#****************************health***************************
management.security.enabled=false

                2、启动后访问效果图

        四、SpringBoot 2.0之后配置

                1、在配置文件中添加如下配置:

#****************************health 健康检查***************************
#修改访问路径  2.0之前默认是/   2.0默认是 /actuator  可以通过这个属性值修改
management.endpoints.web.base-path = /
#开放所有页面节点  默认只开启了health、info两个节点
management.endpoints.web.exposure.include = *
#显示健康具体信息  默认不会显示详细信息
management.endpoint.health.show-details = always

                2、启动后访问的效果图

        五、我们系统中的基础监控思路

                1、监控进程是否意外停止:

                     运维通过zabbix来监控/health或/info节点来判断进程是否还在,如果没有会发相关的报警;

                2、配合实现灰度更新

                     在系统进行发布时(集群),我们前置会挂一个负载均衡器(比如:nginx)在更新的时候脚本会先将nginx要更新的一台的流量切断,然后监控日志中无打印日志(没有流量进入)进行本台的更新,更新完后启动完成后监测/health节点如果有相应组件值且状态都为UP说明本台启动正常,然后在nginx切其他机器流量,直到全部更新完毕。

        六、项目地址及代码版本

               1、地址:https://github.com/dangnianchuntian/springboot

               2、代码版本:1.0.0-Release                              

【小结】

        在不断的实践中提高;通过SpringBoot自带的监控还可以做很多事情,在以后的博文中还会将自己的一些实践进行分享。

发布了291 篇原创文章 · 获赞 2657 · 访问量 536万+

猜你喜欢

转载自blog.csdn.net/u012829124/article/details/89068368