用shell实现informix的性能监控[抛砖引玉]
来源: 作者: 出处:综艺读书 2006-04-04
用shell实现informix的性能监控,并以html格式输出,直观方便。
适合informix系统初建时监控系统性能。
本例是按cron机制运行设计的,安排它在每天系统繁忙时进行监控,以便对系统的资源分配,参数设置进行分析和合理调整。
|
|
|||
#ScriptName:getgloinfo
#定义环境变量
INFORMIXDIR=/usr/informix
INFORMIXSERVER=server0
ONCONFIG=onconfig.server0
PATH=$PATH:$INFORMIXDIR/bin
export INFORMIXDIR INFORMIXSERVER ONCONFIG PATH
LOGG=$INFORMIXDIR/log
#建立数据存放目录
YUE=`date +%Y%m`
if [ ! -d ${LOGG}/${YUE} ]
then
mkdir ${LOGG}/html/${YUE} >/dev/null 2>&1
mkdir ${LOGG}/data/${YUE} >/dev/null 2>&1
fi
#准备临时数据目录
TMP=/tmp/GLO;mkdir $TMP
#数据文件名:格式MMDD-HHMM
D=`/bin/date +%m%d-%H%M`
GLODAT=${LOGG}/data/${YUE}/${D}.glo
tdir=${LOGG}/html/${YUE}
bname=`/bin/basename $GLODAT`
umask 133
#采集数据
getdata(){
#提取统计项目
onstat -g glo|awk '{print $3}'|sed -e '1,/^class/d' -e '/^$/d'|sed '$d' >${TMP}/glotmp
#采集数据:时间间隔100秒
for i in 1 2 3 4 5 6 7
do
onstat -g glo|awk '{print $6}'|sed -e '1,/total/d' -e '/^$/d' >${TMP}/glo.$i
paste ${TMP}/glotmp ${TMP}/glo.${i} >${TMP}/glo.$$
mv ${TMP}/glo.$$ ${TMP}/glotmp
[ $i -lt 7 ] && sleep 100
done
awk '{printf"%s ",$1;for(i=2;i<9;printf"%.2f ",$i++);
for(i=3;i<9;i++)printf"%.2f ",($i-$(i-1));
for(i=4;i<9;i++)printf"%.2f ",($i-$2);printf"\n"}' ${TMP}/glotmp
}
body(){
cat $GLODAT|while read line
do
printf "<tr align=\"center\" valign=\"middle\"><font size=\"1\">\n"
set $line
j=0
for i in $*
do
if [ "$j" != "0" ]
then
printf " <td>%.2f</td>\n" $i
else
printf " <td>%s</td>\n" $i
fi
j=j+1
done
printf "</tr>\n"
done
}
header(){
cat - <<!
<html>
<body>
<table width="95%" border="1" align="center" bordercolorlight="#FFCCCC" bordercolordark="#FF6633">
<CAPTION><FONT SIZE=+2><b>${bname}</b></FONT></CAPTION>
<tr align="center" valign="middle"><font face="宋体">
<td rowspan=2><font size=2>VPS</font></td>
<td colspan=7><font size=+2>原始数据(onstat -g glo)</font></td>
<td colspan=6><font size=+2>资源利用率(%)</font></td>
<td colspan=5><font size=+2>累计利用量(秒)</font></td>
</tr>
<tr align="center" valign="middle"><font size="1">
<td>A</td>
<td>B</td>
<td>C</td>
<td>D</td>
<td>E</td>
<td>F</td>
<td>G</td>
<td>时段一</td>
<td>时段二</td>
<td>时段三</td>
<td>时段四</td>
<td>时段五</td>
<td>时段六</td>
<td>200秒</td>
<td>300秒</td>
<td>400秒</td>
<td>500秒</td>
<td>600秒</td>
</tr>
!
}
tailer(){
D=`date +%Y/%m/%d-%H:%M`
cat - <<!
</table>
<p><font size="1">Report Date:${D}</font></p>
</html>
!
}
# program main body
getdata >$GLODAT
header >$tdir/$bname.html
body >>$tdir/$bname.html
tailer >>$tdir/$bname.html
rm -rf ${TMP}[/code:1:eeefa54fd9]
输出样例:
相关图文阅读
频道图文推荐
相关专题
最新技术文档
·INFORMIX-4GL实用手册(二)(2) 11-17
·开发优质高效的Informix数据库应用程序(4) 11-17
·开发优质高效的Informix数据库应用程序(3) 11-17
·开发优质高效的Informix数据库应用程序(2) 11-17
·Informix TRAIN 文档详解(5) 11-17
·Informix TRAIN 文档详解(4) 11-17
·Informix TRAIN 文档详解(3) 11-17
·Informix TRAIN 文档详解(2) 11-17
·Informix的监控和管理命令(2) 11-17
·Informix 5的安装及初始配置(2) 11-17
·开发优质高效的Informix数据库应用程序(4) 11-17
·开发优质高效的Informix数据库应用程序(3) 11-17
·开发优质高效的Informix数据库应用程序(2) 11-17
·Informix TRAIN 文档详解(5) 11-17
·Informix TRAIN 文档详解(4) 11-17
·Informix TRAIN 文档详解(3) 11-17
·Informix TRAIN 文档详解(2) 11-17
·Informix的监控和管理命令(2) 11-17
·Informix 5的安装及初始配置(2) 11-17
站内各频道最新更新文档
站内最新制作专题
|
|||
| ·ACDSEE专题教程-下载使用 ·迅雷专题教程-下载使用 ·Windows XP频道 ·Windows Vista频道 ·Windows 2000频道 ·win2003频道 ·Freebsd频道 ·Oracle频道 |
·Linux频道 ·Windows频道 ·邮件服务器专题 ·协议大全 ·数据恢复指南教程 ·FreeBSD使用教程 ·Linux数据库宝典 ·Linux基础知识 |
||
热门关键字导读
站内频道文章精选
| · 秘密:Vista隐蔽的动态屏保 · 腾讯开发新电子宠物--QQ熊 · 惠普否认2999元PC有价无货 |
· 驱逐Win系统“流氓”文件 · WinXP中获取未使用的IP地址 · 尝试format C:格式化硬盘? |
| · 在DOS下恢复回收站中的文件 · 拯救WinXP崩溃的救命稻草 · Linux系统中超级权限的应用 |
· 搜狗PK谷歌:谁能代言拼... · 昨日重现,一键GHOST轻松.. · 实现Web迅雷在空闲时杀毒 |
| · AVIFile函数制做AVI文件 · VC中链接动态链接库的方法 · 熊猫烧香核心源码(Delphi) |
· DateDiff函数祥解 · JavaScript去除空格的三种 · js效果 图片加载进度实时.. |
| · SQL Server数据库优化方案 · Oracle的初学者入门心得 · JSP连接Mysql数据库 |
· Photoshop为美女做艺术处理 · 用Freehand创建发光字特效 · 设计自己的个性QQ动态表情 |
百度推荐,商机无限
搜索您感兴趣的内容




