Linux进程监控

Centos下进程监控

需要借助pidstat工具

命令格式:pidstat [option] interval [count]
ps:如果你的linux输入pidstat提示没有找到那么照下方做:

yum search pidstat

然后会提示有:
sysstat.x86_64 : Collection of performance monitoring tools for Linux
意思是指明pidstat在sysstat.x86_64这个包下那么:

yum install sysstat.x86_64

pidstat执行结果解析

监控进程的内存使用情况

pidstat -r -p 11367 1 5
Linux进程监控_第1张图片
minflt/s: 每秒次缺页错误次数(minor page faults),次缺页错误次数意即虚拟内存地址映射成物理内存地址产生的page fault次数
majflt/s: 每秒主缺页错误次数(major page faults),当虚拟内存地址映射成物理内存地址时,相应的page在swap中,这样的page fault为(major page fault),一般在内存使用紧张时产生
VSZ: 虚拟内存:整个进程使用的虚拟内存(KB)
RSS: 常驻内存大小,占用的非交换分区的物理内存(KB)
%MEM: 进程当前占用可用内存的百分比
Command: 进程对应的命令

监控进程的IO使用情况

pidstat -d -p 11367 1 5
Linux进程监控_第2张图片
kb_rd/s:每秒读多少KB
kb_rw/s:每秒写多少KB
kb_ccwr/s:每秒多少KB正准备写到磁盘时被进程取消

监控进程的cpu使用情况

pidstat -u -p 11367 1 5
Linux进程监控_第3张图片
%usr:用户态CPU占用总CPU使用百分比
%system:内核态CPU占总CPU使用百分比
%guest: 进程运行在虚拟CPU上占用的百分比
cpu: 进程运行在哪个CPU核上.

监控进程的堆栈使用情况

pidstat -s -p 11367 1 5
Linux进程监控_第4张图片
StkSize:为进程预留的栈大小(KB)
StkRef:进程使用的栈大小(KB)

监控进程的上下文切换情况

pidstat -w -p 11367 1 5
Linux进程监控_第5张图片
cswch/s:进程每秒自愿上下文切换次数,这当一个进程因为一个资源不可用而导致阻塞时就会出现这种自愿上下文切换.
nvcswch/s: 进程非自愿上下文切换次数。当一个进程在CPU时间片内执行期间被强迫放弃CPU时就会出现这种非自愿上下文切换.

你可能感兴趣的:(C++生涯)