基于SAR对Linux资源的监控shell脚本

 1 #! /bin/bash
 2 
 3 if [ "$#" -lt 2 ]   # $# 传递给脚本或函数的参数个数
 4 then
 5     echo "Usage: $0 program"   # $0 脚本名称
 6     exit -1;
 7 fi
 8 
 9 SLEEP_TIME=$1
10 LOG=$2
11 
12 while true
13 do
14     #线程数
15     thread_num=`sar -q 1 1 | awk '/^Average:/{print $3}'`
16     #句柄数
17     open_files=`sar -v 1 1 | awk '/^Average:/{print $3}'`
18     #cpu占用率
19     cpu_info=`sar -u 1 1 | awk '/^Average:/{print 100-$8}'`
20     #内存使用量
21     mem=`sar -r 1 1 | awk '/^Average:/{print ($3-$5-$6)/($2+$3)*100}'`
22     #IO传输总量
23     io=`sar -b 1 1 | awk '/^Average:/{print $2}'`
24     #输出到日志文件
25     echo -e "`date +"%Y-%m-%d %H:%M:%S"`,${cpu_info},${mem},${io},${thread_num},${open_files}" >> ${LOG}
26     sleep $SLEEP_TIME
27 done

猜你喜欢

转载自www.cnblogs.com/andrew209/p/11567381.html