数据采集
sum_capa_all_1.2.sh
数据入库
mach_moni_2.1.sh
自动任务
crontab -e
30 1 * * * /home/ecapdb/monitor/bin/mach_moni_2.1.sh
56 17 * * * /home/ecapdb/monitor/bin/mach_moni_2.1.sh aa bb
sum_capa_all_1.2.sh
x=0
totMem=`vmstat | grep 'mem=' | awk -F\= '{ print $3 }' | awk -F\M '{print $1 }'`
totMem1=` echo "$totMem * 200 " | bc `
while true
do
strDate=`date +"%Y%m%d"`
strTime=`date +"%Y%m%d%H"`
strRun=`vmstat 1 4 | tail -1 | awk '{ print " "$3" "$14" "$15 }' `
backuprate=`df /dev/backuplv | awk 'NR==2{print $4}'`
ecaprate=`df /dev/ecaplv | awk 'NR==2{print $4}'`
echo $strTime" "$totMem1$strRun" "$backuprate" "$ecaprate >> /home/ecap/monitor/moni_data/capa_$strDate.txt
sleep 56
x=`expr $x + 1`
if [ $x -gt 3000000 ]
then
break
fi
done
数据入库
mach_moni_2.1.sh
if [ "$#" -ne 2 ]
then
echo "Usage:mach_moni.sh areaid machid"
exit 1
fi
yesday=`TZ=aaa20 date +%Y"|"%m"|"%d`
yesday_y=`echo $yesday|awk -F'|' '{print $1}'`
yesday_m=`echo $yesday|awk -F'|' '{print $2}'`
yesday_d=`echo $yesday|awk -F'|' '{print $3}'`
rm /home/ecapdb/monitor/moni_data/$1$2_mach_hour_$yesday_y$yesday_m$yesday_d.txt
if [ -f /home/db2inst1/sqllib/db2profile ]; then
. /home/db2inst1/sqllib/db2profile
fi
db2 catalog tcpip node GDB remote 96.0.42.57 server 50000
db2 catalog db gmonidb at node GDB
db2 connect to gmonidb user ecapdb using ecapdb
area_id=$1
mach_id=$2
moni_date=$yesday_y$yesday_m$yesday_d
hh="00"
x=0
while true
do
if [ x -lt 10 ]
then
hh="0"$x
else
hh=$x
fi
moni_hour=$hh
memcpu_rate=`grep $yesday_y$yesday_m$yesday_d$hh /home/ecap/monitor/moni_data/capa_$yesday_y$yesday_m$yesday_d.txt | awk 'BEGIN{allMem=0;useMem=0;memRate=0;cpuRate=0;num=0;allCpu=0;} { allMem=allMem+$2;useMem=useMem+$3;num=num+1;allCpu=allCpu+$4+$5;} END{ if (allMem>0) { memRate=useMem*100/allMem;cpuRate=allCpu/num;} print memRate"|"cpuRate}'`
mem_rate=`echo $memcpu_rate|awk -F'|' '{print $1}'`
cpu_rate=`echo $memcpu_rate|awk -F'|' '{print $2}'`
bk_rate=`grep $yesday_y$yesday_m$yesday_d$hh /home/ecap/monitor/moni_data/capa_$yesday_y$yesday_m$yesday_d.txt|tail -1|awk '{ print $6}'`
ecap_rate=`grep $yesday_y$yesday_m$yesday_d$hh /home/ecap/monitor/moni_data/capa_$yesday_y$yesday_m$yesday_d.txt|tail -1|awk '{ print $7}'`
tran_num=`cat /usr/IBM/HTTPServer/logs/access.$yesday_y.$yesday_m.$yesday_d.log|grep $1":"$hh |wc -l`
fresh_num=`grep LinkageTX /usr/IBM/HTTPServer/logs/access.$yesday_y.$yesday_m.$yesday_d.log|grep $1":"$hh |wc -l`
click_num=`grep TxRunAction /usr/IBM/HTTPServer/logs/access.$yesday_y.$yesday_m.$yesday_d.log|grep $1":"$hh |wc -l`
db_connect=0
echo $area_id"|"$mach_id"|"$moni_date"|"$hh"|"$memcpu_rate"|"$bk_rate"|"$ecap_rate"|"$tran_num"|"$fresh_num"|"$click_num"|"$db_connect >> /home/ecapdb/monitor/moni_data/$1$2_mach_hour_$moni_date.txt
db2 "insert into t_mach_moni values('"$area_id"','"$mach_id"','"$moni_date"','"$moni_hour"','"$mem_rate"','"$cpu_rate"','"$bk_rate"','"$ecap_rate"',"$tran_num","$fresh_num","$click_num","$db_connect",'','','')"
x=`expr $x + 1`
if [ $x -gt 23 ]
then
break
fi
done
echo "操作成功"
自动任务
crontab -e
30 1 * * * /home/ecapdb/monitor/bin/mach_moni_2.1.sh
56 17 * * * /home/ecapdb/monitor/bin/mach_moni_2.1.sh aa bb