linux 下 系统资源监控 CPU、内存、磁盘、网卡流量监控

sysstat 工具

简介:

        Linux 下的性能分析,包括CPU使用情况,内存使用情况,IO状态等等与系统相关的状态,少不了要使用 sysstat 工具包中的命令,它包括:cifsiostat  iostat  mpstat  pidstat  sadf  sar  tapestat 七条命令。 sysstat 服务启动后,它会自动每个10分钟收集一次系统状态信息,并将它们存储到 /var/log/sa目录下。每天一个文件,文件名分别是sa01, sa02,... sa30..  但是对于嵌入式设备,一般的busybox里面不会包含sysstat里面的命令,或者说是这些命令有些功能已经被裁减了。为了更好的分析嵌入式设备的状态和性能,可以将sysstat工具包里的命令移植到嵌入式设备中。

下面是各个子工具的介绍:常用的为“绿色标注

  • iostat    工具提供CPU使用率及硬盘吞吐效率的数据;
  • mpstat    工具提供单个处理器或多个处理器相关数据;
  • sar    工具负责收集、报告并存储系统活跃的信息;
  • sa1    工具负责收集并存储每天系统动态信息到一个二进制的文件中。它是通过计划任务工具cron来运行,是为sadc所设计的程序前端程序;
  • sa2    工具负责把每天的系统活跃性息写入总结性的报告中。它是为sar所设计的前端 ,要通过cron来调用
  • sadc    工具是系统动态数据收集工具,收集的数据被写一个二进制的文件中,它被用作sar工具的后端;
  • sadf    工具显示被sar通过多种格式收集的数据;
  • pidstat  工具用来监控进程对系统资源的占用、包含CPU、内存、物理磁盘、IO、进程上下文等

sysstat在ubuntu等发行系统可直接安装:ubuntu:sudo apt install sysstat

嵌入式linux 设备需要交叉编译、交叉编译例子如下

1. 交叉编译sysstat工具
  下载:git clone git://github.com/sysstat/sysstat
  配置:./configure --prefix=/usr/lrp/ --host=arm-linux
  编译:make
  安装:sudo make install
  注意:--prefix后跟的路径是install的路径,交叉编译后,这个路径直接移植到板卡相同路径下,将可执行文件路径加入/etc/profile 然后source /etc/profile 不然路径会影响嵌入式移植使用的

2.配置设备端环境

        拷贝:将1交叉编译生成的文件夹/usr/下的lrp整个拷贝到设备的/usr/下

        赋予权限:chmod a+x -R /usr/lrp/

        修改环境变量:vi /etc/profile内容修改如下后,source /etc/profile

        这时候可以使用sysstat start 命令启动服务初始化

 命令详解

 1. mpstat

查看所有CPU核占用使用情况1S的打印频率

mpstat -P ALL 1

 如果为mpstat -P ALL 1 1表示遍历CPU表使用情况1S打印一次,仅打印一次

查看汇总(平均值)CPU占比:mpstat  1 1

 不显示平均值

 

说明:

%user:表示处理用户进程所使用CPU的百分比。用户进程是用于应用程序(如Oracle数据库)的非内核进程;            

%nice:表示使用nice命令对进程进行降级时CPU的百分比;  

%system:表示内核进程使用的CPU百分比;

%iowait:表示等待进行I/O所使用的CPU时间百分比;

%irq:表示用于处理系统中断的CPU百分比;

%soft:表示用于软件中断的CPU百分比;

%steal :显示虚拟机管理器在服务另一个虚拟处理器时虚拟CPU处在非自愿等待下花费时间的百分比

%guest :显示运行虚拟处理器时CPU花费时间的百分比

%idle:显示CPU的空闲时间;

%intr/s:显示每秒CPU接收的中断总数;

计算公式:

total_current=user+system+nice+idle+iowait+irq+softirq

total_pre=pre_user+ pre_system+ pre_nice+pre_idle+ pre_iowait+ pre_irq+ pre_softirq

user=user_cur – user_pre

total=total_cur-total_pre

---------------------------------

mpstat -P CPU 时间间隔 采集次数

mpstat -P ALL 1 5 ----所有的cpu

mpstat -P 0 1 5 ----第一颗cpu

mpstat –P ALL interval times

2.sar  命令可用来监测CPU、内存、网卡信息、io等具体可查资料

传送门:https://blog.csdn.net/liyongbing1122/article/details/89517282

查看网卡信息:

 sar -n DEV 1 1 查看所有网卡1S频率打印一次

 第一字段:时间;
IFACE:设备名;
rxpck/s:每秒收到的包;
rxbyt/s:每秒收到的所有包的体积;
txbyt/s:每秒传输的所有包的体积;
rxcmp/s:每秒收到数据切割压缩的包总数;
txcmp/s :每秒传输的数据切割压缩的包的总数;
rxmcst/s: 每秒收到的多点传送的包;

查看CPU使用情况

sar -u -P ALL 1 1

CPU:    表示机器内的CPU   all 所有核  下标从0开始有几个核就到几个核-1;
%user    表示CPU的利用率;
%nice    表示CPU在用户层优先级的百分比,0表示正常;
%system 表示当系统运行时,在用户应用层上所占用的CPU百分比;
%iowait 表示请求硬盘I/0数据流出时,所占用CPU的百分比;
%idle    表示空闲CPU百分比,值越大系统负载越低;

 查看内存:

sar -r 1 1  使用sar查看内存使用情况1s频率打印1次  如果不加次数,就会按照频率一直打印

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值