sar(System Activity Reporter系统活动情况报告)是目前
Linux 上最为全面的系统
性能分析工具之一,可以从多方面对系统的活动进行报告,包括:文件的读写情况、系统调用的使用情况、
磁盘
I/O、
CPU效率、
内存使用状况、进程活动及IPC有关的活动等。
关于sar如何使用可百度下,或者直接 man sar学习一番。直接给出一个实用监控脚本。
实时系统性能监控脚本
#! /bin/bash
export LC_ALL=en_US.UTF-8
# cpu load(5 min)
#cpu_usage=
1 | 1` |
uptime | awk '{print $11}' | cut -d , -f1
1 | 1` |
#echo "cpu " $cpu_usage
# memery usage
mem_usage=
1 | 1` |
free | grep "buffers/cache" | awk '{print $3 * 100 /($3 + $4) }'
1 | 1` |
echo "memory " $mem_usage
# cpu usage
cpu_usage=
1 | 1` |
sar -C 1 1 | grep "Average:" | awk '{print $3}'
1 | 1` |
echo "cpu " $cpu_usage
disk_tps=
1 | 1` |
sar -b 1 1 | grep "Average:" | awk '{print $2}'
1 | 1` |
echo "disk tps " $disk_tps
em1_load=
1 | 1` |
sar -n DEV 1 1 | grep "Average:" | grep "em1"
1 | 1` |
net_recv_packet_em1=
1 | 1` |
echo $em1_load | awk '{print $3}'
1 | 1` |
net_send_packet_em1=
1 | 1` |
echo $em1_load | awk '{print $4}'
1 | 1` |
net_recv_kB_em1=
1 | 1` |
echo $em1_load | awk '{print $5}'
1 | 1` |
net_send_kB_em1=
1 | 1` |
echo $em1_load | awk '{print $6}'
1 | 1` |
echo "em1 net load " $net_recv_packet_em1 $net_send_packet_em1 $net_recv_kB_em1 $net_send_kB_em1
em2_load=
1 | 1` |
sar -n DEV 1 1 | grep "Average:" | grep "em2"
1 | 1` |
net_recv_packet_em2=
1 | 1` |
echo $em2_load | awk '{print $3}'
1 | 1` |
net_send_packet_em2=
1 | 1` |
echo $em2_load | awk '{print $4}'
1 | 1` |
net_recv_kB_em2=
1 | 1` |
echo $em2_load | awk '{print $5}'
1 | 1` |
net_send_kB_em2=
1 | 1` |
echo $em2_load | awk '{print $6}'
1 | 1` |
echo "em2 net load " $net_recv_packet_em2 $net_send_packet_em2 $net_recv_kB_em2 $net_send_kB_em2
swap_page_num=
1 | 1` |
sar -W 1 1 | grep "Average:" | awk '{print $2 + $3}'
1 | 1` |
echo "swap pages number " $swap_page_num
本文转自 zhenjing 博客园博客,原文链接: http://www.cnblogs.com/zhenjing/p/sar_monitor.html
,如需转载请自行联系原作者