Chinaunix首页 | 论坛 | 博客
  • 博客访问: 39141
  • 博文数量: 16
  • 博客积分: 1415
  • 博客等级: 上尉
  • 技术积分: 165
  • 用 户 组: 普通用户
  • 注册时间: 2009-05-26 23:53
文章分类

全部博文(16)

文章存档

2011年(1)

2010年(1)

2009年(14)

我的朋友

分类: LINUX

2010-04-28 09:40:06

近期由于工作需要,收集了一些监控脚本,分享给大家。
 
#!/bin/bash
########################################################################
#This scripts is checking your host system: the cpu|i/o|mem|network
########################################################################
cd /home/oracle/sh
#make the local language is chinese
#export LANG=zh_CN

removedate=`date +%d`
curdate=`date +%H`
logdir=/home/oracle/sh/log
logcpuuse=$logdir/cpuuse.log
logcpuload=$logdir/cpuload.log
logioload=$logdir/ioload.log
lognetworkload=$logdir/networkload.log
logsysprocess=$logdir/sysprocess.log
logmemuse=$logdir/memuse.log
lognetsession=$logdir/netsession.log

################################
#统计cpu的使用率信息
################################
#判断文件是否存在
if [ -f $logcpuuse ]
then
#echo "logfile is exist !"
if [ "$curdate" == "23" ]
then
date +"%D %r" >>$logcpuuse
sar -u 2 1 |grep all |head -1 >> $logcpuuse
else
sar -u 2 1 |grep all |head -1 >> $logcpuuse
fi
else
#touch $logfile
date > $logcpuuse
sar -u 2 2 | grep CPU >> $logcpuuse
fi
###############################
#统计cpu的负载信息
###############################
if [ -f $logcpuload ]
then
#echo "logfile is exist !"
uptime  >> $logcpuload
else
#touch $logfile
date > $logcpuload
uptime >> $logcpuload
fi

##############################
#磁盘io的负载的信息
##############################
if [ -f $logioload ]
then
date +"%D %r" >> $logioload
iostat -xd 1 1 | sed -n '2,$p' >> $logioload
else
date +"%D %r" > $logioload
iostat -xd 1 1 | sed -n '2,$p' >> $logioload
fi

#################################
#统计网络负载的信息
################################
if [ -f $lognetworkload ]
then
date +"%D %r" >> $lognetworkload
sar -n DEV 1 3| grep eth0 >> $lognetworkload
else
date +"%D %r" > $lognetworkload
sar -n DEV 1 3|head -3 |tail -1 >> $lognetworkload
sar -n DEV 1 3| grep eth0 >> $lognetworkload
fi
###################################
#统计系统进程总数信息
###################################
if [ -f $logsysprocess ]
then
date +"%D %r" >> $logsysprocess
sysnum=`ps aux | wc -l`
oranum=` ps -ef |awk '/ora/&&/dbticket/' |wc -l`
echo "processes of system is: $sysnum" >> $logsysprocess
echo "processes of oracle is: $oranum" >> $logsysprocess
else
date +"%D %r" > $logsysprocess
sysnum=`ps aux | wc -l`
oranum=` ps -ef |awk '/ora/&&/dbticket/' |wc -l`
echo "processes of system is: $sysnum" >> $logsysprocess
echo "processes of oracle is: $oranum" >> $logsysprocess

fi
##############################
#统计内存的信息
##############################
if [ -f $logmemuse ]
then
date +"%D %r" >> $logmemuse
free |grep -1 Mem |head -n 2|tail -1 >> $logmemuse
free | grep Swap >> $logmemuse
else
date +"%D %r" > $logmemuse
free |grep -1 Mem |head -n 2 >> $logmemuse
free | grep Swap >> $logmemuse
fi

###############################
#查看网络连接数,tcp协议
###############################
if [ -f $lognetsession ]
then
date +"%D %r" >> $lognetsession
netstat -an | grep -E "^(tcp)" | cut -c 74- | sort | uniq -c | sort -n >> $lognetsession
else
date +"%D %r" >> $lognetsession
netstat -an | grep -E "^(tcp)" | cut -c 74- | sort | uniq -c | sort -n >> $lognetsession
fi
 
阅读(680) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~