详解Linuxpidstat命令

pidstat是sysstat工具的一个命令,用于监控全部或指定进程的cpu、内存、线程、设备IO等系统资源的占用情况。pidstat首次运行时显示自系统启动开始的各项统计信息,之后运行pidstat将显示自上次运行该命令以后的统计信息。用户可以通过指定统计的次数和时间来获得所需的统计信息。

如何安装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

原创文章,作者:晴川运维,如若转载,请注明出处:https://baike.qcidc.com/11029.html

(0)
晴川运维晴川运维
上一篇 2025年6月30日
下一篇 2025年6月30日

相关推荐

  • Linux Tee 命令使用实例

    Linux继承了Unix以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。在执行Linux命令时,我们既想把输出保存到文件中,又想在屏幕上看到输出内容,那么可以用到tee…

    Linux系统 2025年6月8日
  • Linux下使用dd命令克隆硬盘

    dd 是 Linux/UNIX 下的一个非常有用的命令,作用是用指定大小的块拷贝一个文件,并在拷贝的同时进行指定的转换,本篇文章为大家演示一下使用dd命令克隆硬盘具体方法。 只拷贝…

    Linux系统 2025年6月8日
  • 集群和分布式具体区别

    集群和分布式,都是描述的一组计算机。集群的所有节点跑的是同样的任务,而分布式系统的节点跑的是分解后的任务,下面为大家详细讲解一下集群和分布式不同。 单机结构 我想大家最最最熟悉的就…

    Linux系统 2025年7月2日
  • 用 OpenStack Designate 构建一个 DNS 即服务(DNSaaS)

    学习如何安装和配置 Designate,这是一个 OpenStack 的多租户 DNS 即服务(DNSaaS)。 Designate 是一个多租户的 DNS 即服务,它包括一个用于…

    Linux系统 2025年6月22日
  • 在Django中使用ElasticSearch

    Elasticsearch可以使我们快速,近乎实时地存储,搜索和分析大量数据,并在几毫秒内给出答复。之所以能够获得快速的搜索响应,是因为它可以直接搜索索引,而不是直接搜索文本。 什…

    Linux系统 2025年6月8日
  • AWK读取标准输入具体方法

    在 awk 系列中,我们将会看到几个例子,你可以筛选其他命令的输出代替从一个文件读取输入作为 awk 的输入。我们首先从使用 dir 命令开始,它类似于 ls 命令。 在第一个例子…

    Linux系统 2025年6月4日
  • Linux查看硬件信息(制造商、型号和序列号)具体方法

    用过Linux系统的人都知道这么一个情况,那就是Linux大部分操作是通过命令实现的,并不像Windows那么直观。linux查看硬件信息也是需要通过命令查询才可以看得到硬件的信息…

    Linux系统 2025年6月11日
  • Redis特殊数据类型:HyperLogLog使用方法

    redis是一个开源的,先进的key-value存储,属于非关系型缓存数据库,通常被称为数据结构服务器。Redis 中有三种特殊数据类型:Bitmaps、HyperLogLog、G…

    Linux系统 2025年6月4日
  • 详解Linux /etc/shadow文件

    linux的root密码存在于“/etc/shadow”这个文件中,不过要有root权限才能在linux下看到“/etc/shadow”这个文件,本篇文章重点为大家讲解一下Linu…

    Linux系统 2025年6月4日
  • Linux 中自定义 Cinnamon 桌面具体方法

    Cinnamon由Clement Lefebvre,Linux Mint创始的一个桌面交互环境,试图提供一个布局类似于GNOME 2,含有一个底部面板和启动器器,GNOME2-li…

    Linux系统 2025年6月11日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注