3.1.20 jmxmon 简介

优质
小牛编辑
130浏览
2023-12-01

jmxmon是一个基于open-falcon的jmx监控插件,通过这个插件,结合open-falcon agent,可以采集任何开启了JMX服务端口的java进程的服务状态,并将采集信息自动上报给open-falcon服务端

主要功能

通过jmx采集java进程的jvm信息,包括gc耗时、gc次数、gc吞吐、老年代使用率、新生代晋升大小、活跃线程数等信息。

对应用程序代码无侵入,几乎不占用系统资源。

采集指标

CountersTypeNotes
parnew.gc.avg.timeGAUGE一分钟内,每次YoungGC(parnew)的平均耗时
concurrentmarksweep.gc.avg.timeGAUGE一分钟内,每次CMSGC的平均耗时
parnew.gc.countGAUGE一分钟内,YoungGC(parnew)的总次数
concurrentmarksweep.gc.countGAUGE一分钟内,CMSGC的总次数
gc.throughputGAUGEGC的总吞吐率(应用运行时间/进程总运行时间)
new.gen.promotionGAUGE一分钟内,新生代的内存晋升总大小
new.gen.avg.promotionGAUGE一分钟内,平均每次YoungGC的新生代内存晋升大小
old.gen.mem.usedGAUGE老年代的内存使用量
old.gen.mem.ratioGAUGE老年代的内存使用率
thread.active.countGAUGE当前活跃线程数
thread.peak.countGAUGE峰值线程数

建议设置监控告警项

不同应用根据其特点,可以灵活调整触发条件及触发阈值

告警项触发条件备注
gc.throughputall(#3)<98gc吞吐率低于98%,影响性能
old.gen.mem.ratioall(#3)>90老年代内存使用率高于90%,需要调优
thread.active.countall(#3)>500线程数过多,影响性能

详细的使用方法常见:jmxmon