spring boot actuator搭配jenkins实现发布健康检查和报警
spring boot actuator搭配jenkins实现发布健康检查和报警
背景
当前项目使用jenkins发布,服务重启使用systemctl restart xxx.service,但是具体服务有没有起来,jenkins并没有感知,需要人工介入观察
目标
实现jenkins自动检查服务启动状态,如果失败并报警
方案
1、使用spring boot actuator实现服务状态观察,提供http接口方式
2、curl请求健康检查接口,解析返回结果感知服务状态
3、如果失败,通过钉钉报警
实施
服务集成spring boot actuator
maven坐标
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
</dependency>如果需要显示components详情,需要在配置文件加上配置
健康检查地址:http://ip:port/${server.servlet.context-path}/actuator/health
比如:manager-api服务,ip:127.0.0.1,端口:8086,context-path:/manager,那么健康检查地址就是http://127.0.0.1:8086/manager/actuator/health
可以curl访问下,响应如下
如果没有开启show-details
响应比较简单
status = UP表示服务启动成功
jenkins检查脚本
最后更新于