cpu负载监控:
#!/bin/bash
################################
#定义环境,路径与文件名
################################
export LANG=en_US
hostname=`hostname`
filedate=`date +"%Y_%m_%d"`
#变更路径请修改以下行内容
logdir=/main/logserver/log
#检查路径是否存在,不存在则新建路径
if ! test -d ${logdir}
then
bin/mkdir -p ${logdir}
fi
#定义日志文件名
logcpuload=$logdir/cpuload.log
###############################
#统计cpu的负载信息
###############################
if [ -f $logcpuload ]
then
rm -f $logcpuload
echo "\$paragraph_begin" >> $logcpuload
date +"%Y-%m-%d %H:%M:%S" >> $logcpuload
/usr/bin/uptime >> $logcpuload
echo "\$paragraph_end" >> $logcpuload
else
echo "\$paragraph_begin" >> $logcpuload
date +"%Y-%m-%d %H:%M:%S" >> $logcpuload
/usr/bin/uptime >> $logcpuload
echo "\$paragraph_end" >> $logcpuload
fi
exit 0
cpu使用率监控
#!/bin/bash
################################
#定义环境,路径与文件名
################################
export LANG=en_US
hostname=`hostname`
filedate=`date +"%Y_%m_%d"`
#变更路径请修改以下行内容
logdir=/main/logserver/log
#检查路径是否存在,不存在则新建路径
if ! test -d ${logdir}
then
bin/mkdir -p ${logdir}
fi
#定义日志文件名
logcpuload=$logdir/cpuuse.log
################################
#统计cpu的使用率信息
################################
if [ -f $logcpuuse ]
then
rm -f $logcpuuse
echo "\$paragraph_begin" >> $logcpuuse
date +"%Y-%m-%d %H:%M:%S" >> $logcpuuse
sar -u 2 1 |grep all |head -1 >> $logcpuuse
echo "\$paragraph_end" >> $logcpuuse
else
echo "\$paragraph_begin" >> $logcpuuse
date +"%Y-%m-%d %H:%M:%S" >> $logcpuuse
sar -u 2 1 |grep all |head -1 >> $logcpuuse
echo "\$paragraph_end" >> $logcpuuse
fi
exit 0
磁盘io监控
#!/bin/bash
################################
#定义环境,路径与文件名
################################
export LANG=en_US
hostname=`hostname`
filedate=`date +"%Y_%m_%d"`
#变更路径请修改以下行内容
logdir=/main/logserver/log
#检查路径是否存在,不存在则新建路径
if ! test -d ${logdir}
then
bin/mkdir -p ${logdir}
fi
#定义日志文件名
logcpuload=$logdir/ioload.log
##############################
#磁盘io的负载的信息
##############################
if [ -f $lognetworkload ]
then
rm -f $logioload
echo "\$paragraph_begin" > $logioload
date +"%Y-%m-%d %H:%M:%S" >> $logioload
iostat -xd 1 1 | sed -n '4,$p' >> $logioload
echo "\$paragraph_end" >> $logioload
else
echo "\$paragraph_begin" > $logioload
date +"%Y-%m-%d %H:%M:%S" >> $logioload
iostat -xd 1 1 | sed -n '3,$p' >> $logioload
echo "\$paragraph_end" >> $logioload
fi
exit 0
java监控
#!/bin/bash
################################
#定义环境,路径与文件名
################################
export LANG=en_US
hostname=`hostname`
filedate=`date +"%Y_%m_%d"`
#变更路径请修改以下行内容
logdir=/main/logserver/log
#检查路径是否存在,不存在则新建路径
if ! test -d ${logdir}
then
bin/mkdir -p ${logdir}
fi
#定义日志文件名
logjavastat=$logdir/javastat.log
################################
#统计JVM的使用率信息
################################
#定义JAVA服务的端口号
portnumber=8090
#判断该端口是否为JAVA进程启动
echo "\$paragraph_begin" > $logjavastat
date +"%Y-%m-%d %H:%M:%S" >> $logjavastat
pIDa=`netstat -tlnp|grep ${portnumber}|awk '{print $7}'|awk -F '/' '{print $2}'`
date +"%r" >> $logjavastat
if [ "$pIDa" = "java" ];
then
netstat -tlnp|grep ${portnumber}|awk '{print $7}'|awk -F '/' '{print $1}'|while read line
do
echo PortNo=$portnumber PID=$line status: `/usr/java/jdk1.6.0_45/bin/jstat -gccapacity $line|tail -n1` >> $logjavastat
done
else
echo "No JAVA Process in this Port: Port Number =$portnumber" >> $logjavastat
fi
echo "\$paragraph_end" >> $logjavastat
exit 0
memcached监控
#!/bin/bash
################################
#定义环境,路径与文件名
################################
export LANG=en_US
hostname=`hostname`
filedate=`date +"%Y_%m_%d"`
#变更路径请修改以下行内容
logdir=/main/logserver/log
#检查路径是否存在,不存在则新建路径
if ! test -d ${logdir}
then
bin/mkdir -p ${logdir}
fi
#定义日志文件名
logmemcached=$logdir/memcached.log
###############################
#查看Memcached信息
###############################
#定义Memcached服务的端口号
portnumber=11211
#判断系统内是否存在nc组件
if [ -f usr/bin/nc ]
then
echo "\$paragraph_begin" > $logmemcached
date +"%Y-%m-%d %H:%M:%S" >> $logmemcached
pIDa=`netstat -tlnp|grep ${portnumber}|grep 0.0.0.0|awk '{print $7}'|awk -F '/' '{print $2}'`
#判断定义的端口是否为Memcached的服务端口
if [ "$pIDa" = "memcached" ];
then
echo stats | nc 127.0.0.1 ${portnumber} >> $logmemcached
echo "\$paragraph_end" >> $logmemcached
else
echo "No Memcached Process in this Port: Port Number =$portnumber" >> $logmemcached
echo "\$paragraph_end" >> $logmemcached
fi
else
echo "Can't Found NC mode"
#date +"%r" >> $logmemcached
#echo "Can't Found NC mode" >> $logmemcached
fi
exit 0
内存使用率监控
#!/bin/bash
################################
#定义环境,路径与文件名
################################
export LANG=en_US
hostname=`hostname`
filedate=`date +"%Y_%m_%d"`
#变更路径请修改以下行内容
logdir=/main/logserver/log
#检查路径是否存在,不存在则新建路径
if ! test -d ${logdir}
then
bin/mkdir -p ${logdir}
fi
#定义日志文件名
logmemuse=$logdir/memuse.log
##############################
#统计内存的信息
##############################
if [ -f $logmemuse ]
then
echo "\$paragraph_begin" >> $logmemuse
date +"%Y-%m-%d %H:%M:%S" >> $logmemuse
free -m|grep -1 Mem |head -n 2|tail -1 >> $logmemuse
free -m| grep Swap >> $logmemuse
echo "\$paragraph_end" >> $logmemuse
else
echo "\$paragraph_begin" >> $logmemuse
date +"%Y-%m-%d %H:%M:%S" >> $logmemuse
free -m|grep -1 Mem |head -n 2 >> $logmemuse
free -m| grep Swap >> $logmemuse
echo "\$paragraph_end" >> $logmemuse
fi
exit 0
网卡负载监控
#!/bin/bash
################################
#定义环境,路径与文件名
################################
export LANG=en_US
hostname=`hostname`
filedate=`date +"%Y_%m_%d"`
#变更路径请修改以下行内容
logdir=/main/logserver/log
#检查路径是否存在,不存在则新建路径
if ! test -d ${logdir}
then
bin/mkdir -p ${logdir}
fi
#定义日志文件名
lognetworkload=$logdir/networkload.log
#################################
#统计网络负载的信息
################################
if [ -f $lognetworkload ]
then
echo "\$paragraph_begin" >> $lognetworkload
sar -n DEV 1 3| grep eth0|head -1 >> $lognetworkload
echo "\$paragraph_end" >> $lognetworkload
else
echo "\$paragraph_begin" >> $lognetworkload
#date +"%D" > $lognetworkload
date +"%Y-%m-%d %H:%M:%S" >> $lognetworkload
sar -n DEV 1 3| grep eth0|head -1 >> $lognetworkload
echo "\$paragraph_end" >> $lognetworkload
fi
exit 0
系统进程监控
#!/bin/bash
################################
#定义环境,路径与文件名
################################
export LANG=en_US
hostname=`hostname`
filedate=`date +"%Y_%m_%d"`
#变更路径请修改以下行内容
logdir=/main/logserver/log
#检查路径是否存在,不存在则新建路径
if ! test -d ${logdir}
then
bin/mkdir -p ${logdir}
fi
#定义日志文件名
logsysprocess=$logdir/sysprocess.log
###################################
#统计系统进程总数信息
###################################
if [ -f $lognetworkload ]
then
echo "\$paragraph_begin" >> $logsysprocess
#date +"%r" >> $logsysprocess
date +"%Y-%m-%d %H:%M:%S" >> $logsysprocess
sysnum=`ps aux | wc -l`
echo "processes of system is: $sysnum" >> $logsysprocess
echo "\$paragraph_end" >> $logsysprocess
else
echo "\$paragraph_begin" >> $logsysprocess
#date +"%r" > $logsysprocess
date +"%Y-%m-%d %H:%M:%S" >> $logsysprocess
sysnum=`ps aux | wc -l`
echo "processes of system is: $sysnum" >> $logsysprocess
echo "\$paragraph_end" >> $logsysprocess
fi
exit 0
文章转载自运维先生,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




