CPU.xxx
cpu.idle
cpu.idle表示除硬盘IO等待时间以外其它等待时间,这个值越大,表示cpu越空闲,还可以执行更多的任务,反之亦然,此处我们falcon展示的是idle的波动情况,
cpu.busy
与cpu.idle相对,他的值等于100减去cpu.idle。
cpu.steal
cpu.steal表示被同一宿主机上的其他vm所占用的超出指定cpu配额的程度,例如一台宿主机中每台vm的cpu配额是25%,但是每个vm可以使用超过25%的真实cpu时间片,此时对于其他的vm来说就出现了cpu.steal。原因可能是你的虚拟机需要更多的cpu配额,此时要看是不是st在同一宿主所有的vm上都涨了;还有可能是物理宿主机超卖,此时要看是不是只有一部分vm的st陡增。 如图可以看出午高峰和晚高峰steal会比较高。
load.xxx
此监控项集合包括1min,5min,15min的负载值,每一种又分为总的load和每个cpu的load,计算方法: (读取/proc/loadavg中的前三项值,分别为1min,5min,15min的总负载如load.1min ,每个cpu所占load(如load.1minPerCPU)就是总负载/cpu核数量)
命令行:cat /proc/loadavg 4.61 4.36 4.15 9/84 5662 参数 解释 lavg_1 (4.61) 1-分钟平均负载 lavg_5 (4.36) 5-分钟平均负载 lavg_15(4.15) 15-分钟平均负载 nr_running (9) 在采样时刻,运行队列的任务的数目,与/proc/stat的procs_running表示相同意思 nr_threads (84) 在采样时刻,系统中活跃的任务的个数(不包括运行已经结束的任务) last_pid(5662) 最大的pid值,包括轻量级进程,即线程。 假设当前有两个CPU,则每个CPU的当前任务数为4.61/2=2.31
JVM
JVM相关指标描述
jvm.gc.countGC的次数jvm.gc.timeGC的时间,单位毫秒jvm.younggc.count年轻代GC的次数 ,包括的GC算法(Copy,ParNew,PS Scavenge,G1 Young Generation)jvm.younggc.time年轻代GC的时间,单位毫秒jvm.fullgc.count年老代GC的次数 ,包括的GC算法jvm.fullgc.time年老代GC的时间,单位毫秒jvm.memory.used内存使用总量jvm.memory.used.percent内存使用总量占比jvm.thread.countJVM的线程数jvm.thread.deadlock.countdeadlock线程数
JVM 内存 相关指标
JVM 内存指标描述
jvm.memory.used内存使用总量jvm.memory.used.percent内存使用总量占比jvm.memory.nonheap.usednonheap使用总量jvm.memory.nonheap.used.percentnonheap使用总量占比jvm.memory.oldgen.usedoldgen使用总量jvm.memory.oldgen.used.percentoldgen使用总量占比jvm.memory.oldgen.used.percent.after.fullgc触发fullgc之后使用oldgen的内存使用占比,此时基本剩下不可以回收对象jvm.memory.eden.usededen使用总量jvm.memory.eden.used.percenteden使用总量占比jvm.memory.survivor.usedsurvivor使用总量jvm.memory.survivor.used.percentsurvivor使用总量占比jvm.memory.perm.usedperm使用总量jvm.memory.perm.used.percentperm使用总量占比jvm.nio.directbuffer.useddirectbuffer使用总量,这个一般是nio一些框架会用到jvm.nio.mapped.usedmapped使用总量,这个一般是使用java内存文件映射用到
nonheap:方法区,各个线程共享的内存区域,用于存储已被虚拟机加载的类信息、常量、静态变量、即时编译器编译后的代码等数据。 perm:主要是存放静态的类信息和方法信息,静态的方法和变量,final标注的常量信息等
JVM Thread 相关指标
JVM Thread 相关指标描述
vm.thread.count线程jvm.thread.daemon.countdaemon线程数jvm.thread.totalstarted.counttotalstarted线程数jvm.thread.new.countnew线程数jvm.thread.runnable.countrunnable线程数jvm.thread.blocked.countblocked线程数jvm.thread.waiting.countwaiting线程数jvm.thread.time_waiting.counttime_waiting线程数jvm.thread.terminated.countterminated线程数jvm.thread.deadlock.countdeadlock线程数
http://fangjian0423.github.io/2016/06/04/java-thread-state/
System 相关指标
System 相关指标描述
system.load.average系统load,如果是docker,此指标收集的物理机的loadcpu.system.load.percent系统所有进程占用cpu的百分比cpu.jvm.load.percentjvm占用cpu的百分比system.process.used.phyical.memory系统使用的物理内存system.process.used.swap.size系统使用的swap内存
网络
ss.estab
此监控项表示本机已建立的连接数,可以使用ss | grep ESTAB | wc -l 查看 数据获取方式,在机器上执行命令:ss -s TCP: 2837 (estab 89, closed 2672, orphaned 0, synrecv 0, timewait 2648/0), ports 647 ss.closed 表示已经关闭的TCP连接数(closed 2672) ss.timewait 表示处于等待状态的TCP连接数(timewait 2648)