程序员人生 网站导航

每天邮寄回系统情况的SAR脚本

栏目:服务器时间:2016-07-19 13:23:12

!/bin/bash

edit by ZengMuAnSha 2016-01⑴9 http://blog.csdn.net/zengmuansha

LogName=”/var/log/sa/sadate --date='yesterday' +%d

LOGFILE=/home/oracle/dbscripts/logs/Auto_SAR_date +%F_%H_%M_%S.txt
exec >> $LOGFILE

echo -e
echo ” CPU资源监控:”
echo “%steal:管理程序(hypervisor)为另外一个虚拟进程提供服务而等待虚拟 CPU 的百分比”
echo “%nice:显示在用户级别,用于nice操作,所占用 CPU 总时间的百分比。”
echo “sar -u ”
sar -u -f $LogName

echo -e
echo -e
echo “进程队列长度和平均负载状态监控 ”
echo ” sar -q”
echo “runq-sz:运行队列的长度(等待运行的进程数)”
echo “plist-sz:进程列表中进程(processes)和线程(threads)的数量”
sar -q -f $LogName

echo -e
echo -e
echo “内存和交换空间监控 ”
echo “sar -r”
echo “kbcommit:保证当前系统所需要的内存,即为了确保不溢出而需要的内存(RAM+swap)”
echo “%commit:这个值是kbcommit与内存总量(包括swap)的1个百分比.”
sar -r -f $LogName

echo -e
echo -e
echo “Swap space utilization statistics:”
echo “sar -S ”
sar -S -f $LogName

echo -e
echo -e
echo “分页的监控:”
echo ” sar -B”
echo “fault/s:每秒钟系统产生的缺页数,即主缺页与次缺页之和(major + minor)”
echo “majflt/s:每秒钟产生的主缺页数.”
echo “pgfree/s:每秒被放入空闲队列中的页个数”
echo “pgscank/s:每秒被kswapd扫描的页个数”
echo “pgscand/s:每秒直接被扫描的页个数”
echo “pgsteal/s:每秒钟从cache中被清除来满足内存需要的页个数”
echo “%vmeff:每秒清除的页(pgsteal)占总扫描页(pgscank+pgscand)的百分比”
sar -B -f $LogName

echo -e
echo -e
echo ” 系统交换活动信息监控 ”
echo “sar -W:”
echo “pswpin/s:每秒系统换入的交换页面(swap page)数量”
echo “pswpout/s:每秒系统换出的交换页面(swap page)数量”
sar -W -f $LogName

echo -e
echo -e
echo “装备使用情况监控”
echo “sar -d”
echo “tps:每秒从物理磁盘I/O的次数.多个逻辑要求会被合并为1个I/O磁盘要求,1次传输的大小是不肯定的.”
echo “rd_sec/s:每秒读扇区的次数”
echo “wr_sec/s:每秒写扇区的次数.”
echo “avgrq-sz:平均每次装备I/O操作的数据大小(扇区).”
echo “avgqu-sz:磁盘要求队列的平均长度.”
echo “await:从要求磁盘操作到系统完成处理,每次要求的平均消耗时间,包括要求队列等待时间,单位是毫秒(1秒=1000毫秒).”
echo “svctm:系统处理每次要求的平均时间,不包括在要求队列中消耗的时间.”
echo “%util:I/O要求占CPU的百分比,比率越大,说明越饱和.”
echo “1. avgqu-sz 的值较低时,装备的利用率较高。”
echo “2. 当%util的值接近 1% 时,表示装备带宽已占满。”
sar -d -f $LogName

echo -e
echo -e
echo “Memory statistics:”
echo “sar -R ”
sar -R -f $LogName

echo -e
echo -e
echo “inode文件和其他内核表监控:”
echo “sar -v ”
echo “dentunusd:目录高速缓存中未被使用的条目数量”
echo “ile-nr:文件句柄(file handle)的使用数量”
echo “inode-nr:索引节点句柄(inode handle)的使用数量”
echo “pty-nr:使用的pty数量”
sar -v -f $LogName

echo -e
echo -e
echo “Task creation and system switching statistics:”
echo ” sar -w”
sar -w -f $LogName

echo -e
echo -e
echo “I/O和传送速率监控 ”
echo “sar -b”
echo “tps:每秒钟物理装备的 I/O 传输总量”
echo “rtps:每秒钟从物理装备读入的数据总量”
echo “wtps:每秒钟向物理装备写入的数据总量”
echo “bread/s:每秒钟从物理装备读入的数据量,单位为 块/s”
echo “bwrtn/s:每秒钟向物理装备写入的数据量,单位为 块/s”
sar -b -f $LogName

echo -e
echo -e
echo “TTY device statistics:”
echo “sar -y”
sar -y -f $LogName

发送邮件

mail -s date +%Y%m%d%H‘-‘hostname_sar_rpt shark@163.com < $LOGFILE

------分隔线----------------------------
------分隔线----------------------------

最新技术推荐