《性能监控脚本.doc
文本预览下载声明
性能监控脚本###############################################################################!/bin/bash#监控cpu系统负载IP=`ifconfig eth0 | grep inet addr | cut -f 2 -d : | cut -f 1 -d ` cpu_num=`grep -c model name /proc/cpuinfo`count_uptime=`uptime |wc -w`load_15=`uptime | awk {print $$count_uptime}`average_load=`echo scale=2;a=$load_15/$cpu_num;if(length(a)==scale(a)) print 0;print a | bc` average_int=`echo $average_load | cut -f 1 -d .` load_warn=0.70 if [ $average_int -gt 0]thenecho $IP服务器单个核心15分钟的平均负载为$average_load,超过警戒值1.0,请立即处理!!!$(date +%Y%m%d/%H:%M:%S) /usr/monitor/performance/performance_$(date +%Y%m%d).logecho $IP服务器单个核心15分钟的平均负载为$average_load,超过警戒值1.0,请立即处理!!!$(date +%Y%m%d/%H:%M:%S) | mail -s $IP服务器系统负载严重告警 XXXX@elseecho $IP服务器单个核心15分钟的平均负载值为$average_load,负载正常 $(date +%Y%m%d/%H:%M:%S)/usr/monitor/performance/performance_$(date +%Y%m%d).logfi#监控cpu使用率cpu_idle=`top -b -n 1 | grep Cpu | awk {print $5} | cut -f 1 -d .` if [ $cpu_idle -lt 20 ]thenecho $IP服务器cpu剩余$cpu_idle%,使用率已经超过80%,请及时处理。/usr/monitor/performance/performance_$(date +%Y%m%d).logecho $IP服务器cpu剩余$cpu_idle%,使用率已经超过80%,请及时处理!!! | mail -s $IP服务器cpu告警 XXXX@elseecho$IP服务器cpu剩余$cpu_idle%,使用率正常/usr/monitor/performance/performance_$(date +%Y%m%d).logfi#监控交换分区swap_total=`free -m | grep Swap | awk {print $2}`swap_free=`free -m | grep Swap | awk {print $4}`swap_used=`free -m | grep Swap | awk {print $3}`if [ $swap_used -ne 0 ]thenswap_per=0`echo scale=2;$swap_free/$swap_total | bc`swap_warn=0.20swap_now=`expr $swap_per \ $swap_warn`if [ $swap_now -eq 0 ]then echo $IP服务器swap交换分区只剩下 $swap_free M 未使用,剩余不足20%,使用率已经超过80%,请及时处理。/usr/monitor/performance/performance_$(date +%Y%m%d).logecho $IP服务器swap交换分区只剩下 $swap_free M 未使用,剩余不足20%, 使用率已经超过80%, 请及时处理。 | mail -s $IP服务器内存告警 XXXX@else echo $IP服务器swap交换分区剩下 $swap_free M未使用,使用率正常/usr/monitor/performance/performance_$(date +%Y%m%d).log fielse echo $IP服务器交换分区未使用 /usr/monitor/performance/performance_$(date
显示全部