linux 性能监控 sar命令

参考文章: https://blog.csdn.net/liyongbing1122/article/details/89517282

默认监控: sar 1 1 // CPU和IOWAIT统计状态

(1) sar -b 1 1        // IO传送速率
(2) sar -B 1 1        // 页交换速率
(3) sar -c 1 1        // 进程创建的速率
(4) sar -d 1 1        // 块设备的活跃信息
(5) sar -n DEV 1 1    // 网路设备的状态信息
(6) sar -n SOCK 1 1   // SOCK的使用情况
(7) sar -n ALL 1 1    // 所有的网络状态信息
(8) sar -P ALL 1 1    // 每颗CPU的使用状态信息和IOWAIT统计状态 
(9) sar -q 1 1        // 队列的长度(等待运行的进程数)和负载的状态
(10) sar -r 1 1      // 内存和swap空间使用情况
(11) sar -R 1 1       // 内存的统计信息(内存页的分配和释放、系统每秒作为BUFFER使用内存页、每秒被cache到的内存页)
(12) sar -u 1 1       // CPU的使用情况和IOWAIT信息(同默认监控)
(13) sar -v 1 1       // inode, file and other kernel tablesd的状态信息
(14) sar -w 1 1       // 每秒上下文交换的数目
(15) sar -W 1 1       // SWAP交换的统计信息(监控状态同iostat 的si so)
(16) sar -x 2906 1 1  // 显示指定进程(2906)的统计信息,信息包括:进程造成的错误、用户级和系统级用户CPU的占用情况、运行在哪颗CPU上
(17) sar -y 1 1       // TTY设备的活动状态
(18) 将输出到文件(-o)和读取记录信息(-f)

小脚本

#! /bin/bash
if [ "$#" -lt 1 ]   # $# 传递给脚本或函数的参数个数
then
    echo "Usage: $0 program"   # $0 脚本名称
    exit -1;
fi

SLEEP_TIME=$1
#LOG=$2

while true
do
    #线程数
    thread_num=`sar -q 1 1 | awk '/^Average:/{print $3}'`
    #句柄数
    open_files=`sar -v 1 1 | awk '/^Average:/{print $3}'`
    #cpu占用率
    cpu_info=`sar -u 1 1 | awk '/^Average:/{print 100-$8}'`
    #内存使用量
    mem=`sar -r 1 1 | awk '/^Average:/{print ($3-$5-$6)/($2+$3)*100}'`
    #IO传输总量
    io=`sar -b 1 1 | awk '/^Average:/{print $2}'`
    #输出到日志文件
    echo -e "`date +"%Y-%m-%d %H:%M:%S"`,cpu_info:${cpu_info},mem:${mem},io:${io},thread_num:${thread_num},open_files:${open_files}" #>> ${LOG}
    sleep $SLEEP_TIME
done
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值