Linux中国
pidstat – 监控并统计Linux进程的数据
如何安装pidstat
pidstat 是sysstat软件套件的一部分,sysstat包含很多监控linux系统状态的工具,它能够从大多数linux发行版的软件源中获得。
在Debian/Ubuntu系统中可以使用下面的命令来安装
# apt-get install sysstat
CentOS/Fedora/RHEL版本的linux中则使用下面的命令:
# yum install sysstat
使用pidstat
使用pidstat不加任何参数等价于加上-p参数,但是只有正在活动的任务会被显示出来。
# pidstat
在结果中你能看到如下内容:
- PID - 被监控的任务的进程号
- %usr - 当在用户层执行(应用程序)时这个任务的cpu使用率,和 nice 优先级无关。注意这个字段计算的cpu时间不包括在虚拟处理器中花去的时间。
- %system - 这个任务在系统层使用时的cpu使用率。
- %guest - 任务花费在虚拟机上的cpu使用率(运行在虚拟处理器)。
- %CPU - 任务总的cpu使用率。在SMP环境(多处理器)中,如果在命令行中输入-I参数的话,cpu使用率会除以你的cpu数量。
- CPU - 正在运行这个任务的处理器编号。
- Command - 这个任务的命令名称。
I/O 统计数据
通过使用-d参数来得到I/O的统计数据。比如:
# pidstat -d -p 8472
IO 输出会显示一些内的条目:
- kB_rd/s - 任务从硬盘上的读取速度(kb)
- kB_wr/s - 任务向硬盘中的写入速度(kb)
- kB_ccwr/s - 任务写入磁盘被取消的速率(kb)
页面失败和内存使用
使用-r标记你能够得到内存使用情况的数据。
重要的条目:
- minflt/s - 从内存中加载数据时每秒出现的小的错误的数目,这些不要求从磁盘载入内存页面。
- majflt/s - 从内存中加载数据时每秒出现的较大错误的数目,这些要求从磁盘载入内存页面。
- VSZ - 虚拟容量:整个进程的虚拟内存使用(kb)
- RSS - 长期内存使用:任务的不可交换物理内存的使用量(kb)
举例
1. 你可以通过使用下面的命令来监测内存使用
# pidstat -r 2 5
这会给你5份关于page faults的统计数据结果,间隔2秒。这将会更容易的定位出现问题的进程。
2. 显示所有mysql服务器的子进程
# pidstat -T CHILD -C mysql
3. 将所有的统计数据结合到一个便于阅读的单一报告中:
# pidstat -urd -h
via: http://linoxide.com/linux-command/linux-pidstat-monitor-statistics-procesess/
作者:Adrian Dinu 译者:John 校对:wxy
本文转载来自 Linux 中国: https://github.com/Linux-CN/archive
对这篇文章感觉如何?
太棒了
0
不错
0
爱死了
0
不太好
0
感觉很糟
0
More in:Linux中国
如何通过 VLC 使用字幕
使用 VLC 媒体播放器播放和管理字幕的新手指南。
Unix 桌面:在 Linux 问世之前
仅仅开源还不足以实现开放,还需开放标准和建立共识。
Valve 对于 Ubuntu 的 Snap 版本的 Steam 并不满意:原因何在
你可能会发现,Snap 版本的 Steam 并不如你期待的那样好,你怎么看?
Wine 9.0 发布,实验性地加入了 Wayland 驱动
Wine 的这个新版本正在为未来做好准备!