欢迎大家分享自己的文档,请点击查阅:分享方法,![]() 如果你喜欢这文章,可以点击文章结尾处百度分享,分享到你的各种社区收藏,或推荐给朋友……
sar命令可以全面获取系统的CPU、运行队列、磁盘IO、分页(交换区)、内存、CPU中断、网络等性能数据 sar命令的语法如下:
各个选项及参数的含义如下:
options,命令行选项,下面列出一些常用选项 -A 显示系统所有资源设备(CPU、内存、磁盘)的运行情况 -u 显示系统所有CPU在才有时间内的负载状态 -P 显示当前系统中指定CPU的使用情况 -d 显示系统所有硬件设备在采样时间内的使用状况 -r 显示系统内存在采样时间内的使用情况 -b 显示缓冲区在采样时间内的使用情况 -v 显示进程、文件、节点和锁表状态 -n 显示网络运行状态。参数后面可以跟DEV、EDEV、SOCK和FULL。DEV显示网络接口信息,EDEV显示网络错误的统计数据,SOCK显示套接字信息,FULL显示前三参数的所有信息。 -q显示了运行队列的大小,它与系统当时的平均负载相同 -R显示进程在采样时间内的活动情况 -y显示终端设备在采样时间内的活动情况 -w 显示系统交换活动在采样时间内的状态 -o filename将命令结果以二进制格式存放在文件中,filename为存储文件名 interval 采样间隔 count 采样次数,是可选参数
例如, 要查看系统CPU整体负载情况,每3秒统计一次,统计5次,
系统的CPU计数是从0开始的,如果要查看第二个CPU的运行负载,使用
查看系统磁盘的读写性能,使用
查看系统内存的使用情况、网络运行状态,分别使用
下面是sar命令对某个系统的cpu的统计输出
上面每项的输出解释如下:
* %user显示了用户进程消耗的CPU时间百分比 * %nice显示了运行正常进程所耗的CPU时间百分比 * %system显示了系统进程消耗的CPU时间百分比 * %iowait显示了IO等待占用的CPU时间百分比 * %steal显示在内存相对紧张的情况下pagein强制对不同的页面进行steal操作 * %idle显示了CPU在空闲状态的时间百分比
每项的输出都非常直观,并且最后一行的average是汇总行,即统计平均值 需要注意的是,第一行的统计中是包含了sar本身的统计消耗,所以%user列会偏高一点,不过不会对统计结果产生太大影响。
在一个多CPU的系统中,如果程序使用了单线程,会出现一个现象:CPu整体使用率不高,但是系统应用响应很慢,这是因为单线程只使用一个CPU,导致这个CPU占用率为100%,无法处理其他请求,而其他的CPU却闲置。针对这个问题,可以分开查询系统的CPU,使用sar -P 统计每个CPU的使用情况。
转载请注明linux系统运维: |