最近又有一个新的构思,就是通过SpringBoot Actuator,完成对于所有的service模块的监控,并且在admin显示数据,这个思路来源于阿里云


类似于这样显示一个折线图
思路:
1.这个监测功能整合到sta模块,建立一个数据库service_sta,里面建立一个表ram,字段(id,服务名称,服务url,ram占用率,时间),再建立一个表cpu(id,服务名称,服务url,cpu占用率,时间)
2.所有模块引入actuator依赖,并且配置使sta模块可以通过http请求获取服务的运行状态(这里我计划用cloud的openfeign写内部掉用,整好可以借助gateway中的路由)
3.在task模块创建一个每小时执行一次的任务,通过mq传给sta模块
4.sta模块接收到消息之后开始逐个发送请求,获取每一个服务的数据,(初始的构思是一分钟一次)
5.当服务内存占用特别多的时候,msm模块会发送邮件告诉管理员,服务坏了.
6.未来展望(画饼),现在监测中心只是可以对服务进行一个监测功能,这里我希望他在监测到服务异常之后会自动上线新的服务,减少线上的损失
这里我主要是通过请求这两个来获取参数
堆内存
localhost:端口号/actuator/metrics/jvm.memory.used?tag=area:heap
系统cpu
localhost:端口号/actuator/metrics/system.cpu.usage
之前有写过一个springboot整合Actuator,这是之前的博客
指标监控 - 小岚 (zhaodapiaoliang.top)
这里面用到了一个叫spring-boot-admin的第三方组件,这里我分析了他的路由

获取了上面两个url,下一步就是,下面是spring-boot-admin的效果图

接下来就是写代码的过程了我会在b站直播:https://space.bilibili.com/443685731