放干货之前容许我说一些废话(其实觉得也是干货)
从数据层面,可以把prometheus理解成一个简单的数据库,每个metrices可以配置不同的标签,对应着一系列数值,但是如果给这些数值赋予各种业务的,资源的,服务性能的意义,并结合AlertManager,prometheus简直是个神器啊
网上文章很多,入门比较容易,但是我本人学习的时候有个地方理解了比较久,在promethues的graph页,如果查询metrics_name{tag1:"value1",...}
,可以查到数据,数据以线图展示,这个比较好理解,就是把这个系列每个时间点的数值绘制了出来,但是我要查五分钟内的:metrics_name{tag1:"value1",...}[5m]
,图表就无法展示了,一度无法理解,这个不就是应该展示前5分钟的数据吗,出现这种疑惑其实是没有理解prometheus真正用法,在prometheus里,永远要把数据想象成每一秒的数值,图表展示的必须是 【时间(精确到秒)】,【这一秒的数值】,是一个一维数组,而metrics_name{tag1:"value1",...}[5m]
查出来的是一个二维数组【时间(精确到秒)】,【这一秒前五分钟内的所有数值】,自然就无法绘制线图了,所以我们要对这个数据的第二维度做一些聚合,例如做个sum
,或者统计一下count
,或者算一下增长量increase
,或者平均增长量
SpringBoot自定义prometheus监控
最新推荐文章于 2024-07-12 11:45:35 发布
本文介绍了如何在SpringBoot应用中自定义Prometheus监控,通过配置Counter类型的指标跟踪定时任务执行情况。当任务超过24小时未同步时,利用Prometheus的rules触发告警。在实现过程中,需要注意配置文件的调整,以及对组件默认暴露接口的适配和转发。
摘要由CSDN通过智能技术生成