• 软件测试技术
  • 软件测试博客
  • 软件测试视频
  • 开源软件测试技术
  • 软件测试论坛
  • 软件测试沙龙
  • 软件测试资料下载
  • 软件测试杂志
  • 软件测试人才招聘
    暂时没有公告

字号: | 推荐给好友 上一篇 | 下一篇

PRODUCT DB2 SPACE MONITOR SHELL

发布: 2007-6-08 22:43 | 作者: seanhe | 来源: | 查看: 50次 | 进入软件测试论坛讨论

领测软件测试网

PRODUCT DB2 SPACE MONITOR SHELL

#! /bin/sh
Month=`date "+%m"`
Day=`date "+%d"`
Year=`date "+%y"`
YEAR=`date "+%Y"`

LogDir=/tmp/sysmonitor

DISK=$LogDir/FILESYSTEM_$YEAR$Month$Day.txt
Temp_file1=$LogDir/temp1.log
Temp_file2=$LogDir/temp2.log

#####Monitor FileSpace#####
date>> $DISK
df -m >> $DISK

CNT1=`grep dev $DISK|grep -E -w "hd4|var|maestro"|awk '{if(/<0.2){print }}'|wc -l`
CNT2=`grep dev $DISK|grep -E -w -v "hd4|var|hd3|usr|maestro|hd1|opt|fix|proc"|awk '{if(/<0.1){print }}'|wc -l`
CNT3=`grep dev $DISK|grep -E -w "hd3"|awk '{if(<1500){print }}'|wc -l`

if [ `expr $CNT1 + $CNT2 + $CNT3` -gt 0 ] ; then
  CRITICAL=$LogDir/CRITICAL_FILESYSTEM_$YEAR$Month$Day.txt
  echo "***********CRITICAL***********" >> $CRITICAL
  date >> $CRITICAL
  grep -w Free $DISK >> $CRITICAL
  grep dev $DISK|grep -E -w "hd4|var|maestro"|awk '{if(/<0.2){print }}' >> $CRITICAL
  grep dev $DISK|grep -E -w -v "hd4|var|hd3|usr|maestro|hd1|opt|fix|proc"|awk '{if(/<0.1){print }}' >> $CRITICAL
  grep dev $DISK|grep -E -w "hd3"|awk '{if(<1500){print }}' >> $CRITICAL
fi

CNT1=`grep dev $DISK|grep -E -w "hd4|var|maestro"|awk '{if(/<0.35){print }}'|wc -l`
CNT2=`grep dev $DISK|grep -E -w -v "hd4|var|hd3|usr|maestro|hd1|opt|fix|proc"|awk '{if(/<0.2){print }}'|wc -l`
CNT3=`grep dev $DISK|grep -E -w "hd3"|awk '{if(<2000){print }}'|wc -l`

if [ `expr $CNT1 + $CNT2 + $CNT3` -gt 0 ] ; then
  WARNING=$LogDir/WARNING_FILESYSTEM_$YEAR$Month$Day.txt
  echo "***********WARNING***********" >> $WARNING
  date >> $WARNING
  grep -w Free $DISK >> $WARNING
  grep dev $DISK|grep -E -w "hd4|var|maestro"|awk '{if(/<0.35){print }}' >> $WARNING
  grep dev $DISK|grep -E -w -v "hd4|var|hd3|usr|maestro|hd1|opt|fix|proc"|awk '{if(/<0.2){print }}' >> $WARNING
  grep dev $DISK|grep -E -w "hd3"|awk '{if(<2000){print }}' >> $WARNING
fi


####Monitor TableSpace####
CRITICAL=$LogDir/CRITICAL_TABLESPACE_$YEAR$Month$Day.txt

TABLE=$LogDir/TABLESPACE_GPCDB_$YEAR$Month$Day.txt
su - gpcp <<!!
db2 connect to gpcdb > /dev/null
db2 list tablespaces show detail >> $TABLE
db2 connect reset > /dev/null
exit
!!

grep -E -w "Name|Useable pages|Used pages" $TABLE > $Temp_file1
awk ';if(NR%3==2);if(NR%3==0){y=$NF;print name,y/x*100}}' $Temp_file1 > $Temp_file2

CNT=`awk ' ~ /^G/ {if(>95){print "%"}}' $Temp_file2|wc -l`

if [ $CNT -gt 0 ] ; then
  echo "***********CRITICAL GPCDB***********" >> $CRITICAL
  date >> $CRITICAL
  awk ' ~ /^G/ {if(>95){print "%"}}' $Temp_file2 >> $CRITICAL
fi


TABLE=$LogDir/TABLESPACE_GALDB_$YEAR$Month$Day.txt
su - galp <<!!
db2 connect to galdb > /dev/null
db2 list tablespaces show detail >> $TABLE
db2 connect reset > /dev/null
exit
!!

grep -E -w "Name|Useable pages|Used pages" $TABLE > $Temp_file1
awk ';if(NR%3==2);if(NR%3==0){y=$NF;print name,y/x*100}}' $Temp_file1 > $Temp_file2

CNT=`awk ' ~ /^G/ {if(>95){print "%"}}' $Temp_file2|wc -l`

if [ $CNT -gt 0 ] ; then
  echo "***********CRITICAL GALDB***********" >> $CRITICAL
  date >> $CRITICAL
  awk ' ~ /^G/ {if(>95){print "%"}}' $Temp_file2 >> $CRITICAL
fi


TABLE=$LogDir/TABLESPACE_GSIDB_$YEAR$Month$Day.txt
su - gsip <<!!
db2 connect to gsidb > /dev/null
db2 list tablespaces show detail >> $TABLE
db2 connect reset > /dev/null
exit
!!

grep -E -w "Name|Useable pages|Used pages" $TABLE > $Temp_file1
awk ';if(NR%3==2);if(NR%3==0){y=$NF;print name,y/x*100}}' $Temp_file1 > $Temp_file2

CNT=`awk ' ~ /^G/ {if(>95){print "%"}}' $Temp_file2|wc -l`

if [ $CNT -gt 0 ] ; then
  CRITICAL=$LogDir/CRITICAL_TABLESPACE_$YEAR$Month$Day.txt
  echo "***********CRITICAL GSIDB***********" >> $CRITICAL
  date >> $CRITICAL
  awk ' ~ /^G/ {if(>95){print "%"}}' $Temp_file2 >> $CRITICAL
fi


######Remove Temp file#####
rm $Temp_file1
rm $Temp_file2

######Remove Old file#####
find $LogDir -name "*.txt" -mtime +90 -print -exec rm {} \;

PRODUCT DB2 SPACE MONITOR SHELL

#! /bin/sh
Month=`date "+%m"`
Day=`date "+%d"`
Year=`date "+%y"`
YEAR=`date "+%Y"`

LogDir=/tmp/sysmonitor

DISK=$LogDir/FILESYSTEM_$YEAR$Month$Day.txt
Temp_file1=$LogDir/temp1.log
Temp_file2=$LogDir/temp2.log

#####Monitor FileSpace#####
date>> $DISK
df -m >> $DISK

CNT1=`grep dev $DISK|grep -E -w "hd4|var|maestro"|awk '{if(/<0.2){print }}'|wc -l`
CNT2=`grep dev $DISK|grep -E -w -v "hd4|var|hd3|usr|maestro|hd1|opt|fix|proc"|awk '{if(/<0.1){print }}'|wc -l`
CNT3=`grep dev $DISK|grep -E -w "hd3"|awk '{if(<1500){print }}'|wc -l`

if [ `expr $CNT1 + $CNT2 + $CNT3` -gt 0 ] ; then
  CRITICAL=$LogDir/CRITICAL_FILESYSTEM_$YEAR$Month$Day.txt
  echo "***********CRITICAL***********" >> $CRITICAL
  date >> $CRITICAL
  grep -w Free $DISK >> $CRITICAL
  grep dev $DISK|grep -E -w "hd4|var|maestro"|awk '{if(/<0.2){print }}' >> $CRITICAL
  grep dev $DISK|grep -E -w -v "hd4|var|hd3|usr|maestro|hd1|opt|fix|proc"|awk '{if(/<0.1){print }}' >> $CRITICAL
  grep dev $DISK|grep -E -w "hd3"|awk '{if(<1500){print }}' >> $CRITICAL
fi

CNT1=`grep dev $DISK|grep -E -w "hd4|var|maestro"|awk '{if(/<0.35){print }}'|wc -l`
CNT2=`grep dev $DISK|grep -E -w -v "hd4|var|hd3|usr|maestro|hd1|opt|fix|proc"|awk '{if(/<0.2){print }}'|wc -l`
CNT3=`grep dev $DISK|grep -E -w "hd3"|awk '{if(<2000){print }}'|wc -l`

if [ `expr $CNT1 + $CNT2 + $CNT3` -gt 0 ] ; then
  WARNING=$LogDir/WARNING_FILESYSTEM_$YEAR$Month$Day.txt
  echo "***********WARNING***********" >> $WARNING
  date >> $WARNING
  grep -w Free $DISK >> $WARNING
  grep dev $DISK|grep -E -w "hd4|var|maestro"|awk '{if(/<0.35){print }}' >> $WARNING
  grep dev $DISK|grep -E -w -v "hd4|var|hd3|usr|maestro|hd1|opt|fix|proc"|awk '{if(/<0.2){print }}' >> $WARNING
  grep dev $DISK|grep -E -w "hd3"|awk '{if(<2000){print }}' >> $WARNING
fi


####Monitor TableSpace####
CRITICAL=$LogDir/CRITICAL_TABLESPACE_$YEAR$Month$Day.txt

TABLE=$LogDir/TABLESPACE_GPCDB_$YEAR$Month$Day.txt
su - gpcp <<!!
db2 connect to gpcdb > /dev/null
db2 list tablespaces show detail >> $TABLE
db2 connect reset > /dev/null
exit
!!

grep -E -w "Name|Useable pages|Used pages" $TABLE > $Temp_file1
awk ';if(NR%3==2);if(NR%3==0){y=$NF;print name,y/x*100}}' $Temp_file1 > $Temp_file2

CNT=`awk ' ~ /^G/ {if(>95){print "%"}}' $Temp_file2|wc -l`

if [ $CNT -gt 0 ] ; then
  echo "***********CRITICAL GPCDB***********" >> $CRITICAL
  date >> $CRITICAL
  awk ' ~ /^G/ {if(>95){print "%"}}' $Temp_file2 >> $CRITICAL
fi


TABLE=$LogDir/TABLESPACE_GALDB_$YEAR$Month$Day.txt
su - galp <<!!
db2 connect to galdb > /dev/null
db2 list tablespaces show detail >> $TABLE
db2 connect reset > /dev/null
exit
!!

grep -E -w "Name|Useable pages|Used pages" $TABLE > $Temp_file1
awk ';if(NR%3==2);if(NR%3==0){y=$NF;print name,y/x*100}}' $Temp_file1 > $Temp_file2

CNT=`awk ' ~ /^G/ {if(>95){print "%"}}' $Temp_file2|wc -l`

if [ $CNT -gt 0 ] ; then
  echo "***********CRITICAL GALDB***********" >> $CRITICAL
  date >> $CRITICAL
  awk ' ~ /^G/ {if(>95){print "%"}}' $Temp_file2 >> $CRITICAL
fi


TABLE=$LogDir/TABLESPACE_GSIDB_$YEAR$Month$Day.txt
su - gsip <<!!
db2 connect to gsidb > /dev/null
db2 list tablespaces show detail >> $TABLE
db2 connect reset > /dev/null
exit
!!

grep -E -w "Name|Useable pages|Used pages" $TABLE > $Temp_file1
awk ';if(NR%3==2);if(NR%3==0){y=$NF;print name,y/x*100}}' $Temp_file1 > $Temp_file2

CNT=`awk ' ~ /^G/ {if(>95){print "%"}}' $Temp_file2|wc -l`

if [ $CNT -gt 0 ] ; then
  CRITICAL=$LogDir/CRITICAL_TABLESPACE_$YEAR$Month$Day.txt
  echo "***********CRITICAL GSIDB***********" >> $CRITICAL
  date >> $CRITICAL
  awk ' ~ /^G/ {if(>95){print "%"}}' $Temp_file2 >> $CRITICAL
fi


######Remove Temp file#####
rm $Temp_file1
rm $Temp_file2

######Remove Old file#####
find $LogDir -name "*.txt" -mtime +90 -print -exec rm {} \;

延伸阅读

文章来源于领测软件测试网 https://www.ltesting.net/


关于领测软件测试网 | 领测软件测试网合作伙伴 | 广告服务 | 投稿指南 | 联系我们 | 网站地图 | 友情链接
版权所有(C) 2003-2010 TestAge(领测软件测试网)|领测国际科技(北京)有限公司|软件测试工程师培训网 All Rights Reserved
北京市海淀区中关村南大街9号北京理工科技大厦1402室 京ICP备2023014753号-2
技术支持和业务联系:info@testage.com.cn 电话:010-51297073

软件测试 | 领测国际ISTQBISTQB官网TMMiTMMi认证国际软件测试工程师认证领测软件测试网