サーバステータス表示CGI-Ver.2
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
]
開始行:
**サーバの負荷状況を表示するCGI-Ver.2 [#y70873e4]
稼働時間・ロードアベレージ・メモリ使用状況・ディスクの使...
**使用方法 [#g9e4493a]
-1. CGIが実行可能な領域に配置~
-2. テンポラリフォルダをフルアクセス権限(777)で作成~
-3. OUTPATH変数にテンポラリフォルダの絶対パスを指定~
~
CGIはテンポラリフォルダに一時ファイルを作成し、収集した情...
一時ファイルが完成した段階で一時ファイルの中身をブラウザ...
**コード [#t8a5f022]
#!/bin/sh
# ---------------------------------
# Process Check CGI
# ---------------------------------
# Version : 1.2
# update : 2008.01.29
#
export LANG=C
export PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin...
# Set
OUTPATH="/usr/local/apache/htdocs/temp"
# System
DATE=`date +%Y%m%d`
OUTFILE="proc_"$DATE".html"
OUTFILE="proc.html"
OUTPUT=$OUTPATH"/"$OUTFILE
TEMP=$OUTPATH"/mdstat-temp.txt"
# Base
SERVER=`hostname`
DATEFULL=`date +%Y/%m/%d\ %H:%M:%S`
# HTML Header
cat <<EOF > $OUTPUT
<HTML>
<HEAD>
<META NAME="robots" CONTENT="none; charset=shift_jis">
<TITLE>$SERVER - System Status</TITLE>
</HEAD>
<BODY BGCOLOR="#FFFFFF">
<CENTER>
<HR>
$SERVER - System Status - <BR>
<HR>
UPDATE: $DATEFULL <BR>
<BR>
EOF
## Load Avarage
UPTIME=`uptime | awk '{printf "%s%s %s",$3,$4,$1}' | sed...
LA1=`uptime | awk '{print $10}' | sed "s/,//g"`
LA5=`uptime | awk '{print $11}' | sed "s/,//g"`
LA15=`uptime | awk '{print $12}' | sed "s/,//g"`
LA1C="FFFFFF"
LA2C="FFFFFF"
LA3C="FFFFFF"
cat <<EOF >> $OUTPUT
<TABLE border=1>
<TR><TD bgcolor=AAAAAA>連続稼働時間</TD><TD align=center...
</TABLE>
<BR>
<TABLE border=1>
<TR><TD bgcolor=AAAAAA>負荷状況(1/5/15min)</TD><TD align...
</TABLE>
$LA3A
<BR>
EOF
# Memory
echo "<TABLE border=1>" >> $OUTPUT
echo "<TR bgcolor=AAAAAA><TD align=center width=100>種類...
free -m | grep "Mem" | awk '{printf "<TR><TD>Physical Me...
free -m | grep "Swap" | awk '{printf "<TR><TD>Swap Mem</...
echo "</TABLE><BR>" >> $OUTPUT
# Disk Space
echo "<TABLE border=1>" >> $OUTPUT
echo "<TR bgcolor=AAAAAA><TD width=70>マウント</TD><TD w...
df -m | grep -v none | grep -v Filesystem | grep \/dev |...
echo "</TABLE><BR>" >> $OUTPUT
#vmstat
echo "<TABLE border=1>" >> $OUTPUT
echo "<TR bgcolor=AAAAAA><TD align=center width=100 cols...
vmstat -n | grep -v procs | awk '{printf "<TR align=cent...
echo "</TABLE><BR>" >> $OUTPUT
cat <<EOF >> $OUTPUT
<TABLE>
<TR><TD colspan="2">vmstatの読み方</TD></TR>
<TR><TD>r:</TD><TD>CPU へのアクセスを待っているプロセス...
<TR><TD>b:</TD><TD>割り込み不可能なスリープ状態にあるプ...
<TR><TD>bi:</TD><TD>ブロックデバイスから受け取ったブロッ...
<TR><TD>bo:</TD><TD>ブロックデバイスに送られたブロック (...
<TR><TD>in:</TD><TD>一秒あたりの割り込み回数。クロック割...
<TR><TD>cs:</TD><TD>一秒あたりのコンテキストスイッチの回...
<TR><TD>us:</TD><TD>カーネルコード以外の実行に使用した時...
<TR><TD>sy:</TD><TD>カーネルコードの実行に使用した時間 (...
<TR><TD>id:</TD><TD>アイドル時間。Linux 2.5.41 以前では...
<TR><TD>wa:</TD><TD>IO 待ち時間。Linux 2.5.41 以前では、...
</TABLE>
EOF
# HTML Footer
cat <<EOF >> $OUTPUT
</CENTER>
</BODY>
</HTML>
EOF
## ReMark
#mv $OUTPUT $TEMP
#sed 's/>active/ bgcolor=00FF00>active/g' $TEMP > $OUTPUT
#rm $TEMP
#mv $OUTPUT $TEMP
#sed 's/>inactive<\/TD>/ bgcolor=FF5555>inactive<\/TD>/g...
#rm $TEMP
#mv $OUTPUT $TEMP
#sed 's/>F/ bgcolor=FF5555>/g' $TEMP > $OUTPUT
#rm $TEMP
#mv $OUTPUT $TEMP
#sed 's/<TD><\/TD>/<TD>-<\/TD>/g' $TEMP > $OUTPUT
#rm $TEMP
# End
echo Content-type: text/html
echo
cat $OUTPUT
rm -f $TEMP
rm -f $OUTPUT
# EOF
終了行:
**サーバの負荷状況を表示するCGI-Ver.2 [#y70873e4]
稼働時間・ロードアベレージ・メモリ使用状況・ディスクの使...
**使用方法 [#g9e4493a]
-1. CGIが実行可能な領域に配置~
-2. テンポラリフォルダをフルアクセス権限(777)で作成~
-3. OUTPATH変数にテンポラリフォルダの絶対パスを指定~
~
CGIはテンポラリフォルダに一時ファイルを作成し、収集した情...
一時ファイルが完成した段階で一時ファイルの中身をブラウザ...
**コード [#t8a5f022]
#!/bin/sh
# ---------------------------------
# Process Check CGI
# ---------------------------------
# Version : 1.2
# update : 2008.01.29
#
export LANG=C
export PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin...
# Set
OUTPATH="/usr/local/apache/htdocs/temp"
# System
DATE=`date +%Y%m%d`
OUTFILE="proc_"$DATE".html"
OUTFILE="proc.html"
OUTPUT=$OUTPATH"/"$OUTFILE
TEMP=$OUTPATH"/mdstat-temp.txt"
# Base
SERVER=`hostname`
DATEFULL=`date +%Y/%m/%d\ %H:%M:%S`
# HTML Header
cat <<EOF > $OUTPUT
<HTML>
<HEAD>
<META NAME="robots" CONTENT="none; charset=shift_jis">
<TITLE>$SERVER - System Status</TITLE>
</HEAD>
<BODY BGCOLOR="#FFFFFF">
<CENTER>
<HR>
$SERVER - System Status - <BR>
<HR>
UPDATE: $DATEFULL <BR>
<BR>
EOF
## Load Avarage
UPTIME=`uptime | awk '{printf "%s%s %s",$3,$4,$1}' | sed...
LA1=`uptime | awk '{print $10}' | sed "s/,//g"`
LA5=`uptime | awk '{print $11}' | sed "s/,//g"`
LA15=`uptime | awk '{print $12}' | sed "s/,//g"`
LA1C="FFFFFF"
LA2C="FFFFFF"
LA3C="FFFFFF"
cat <<EOF >> $OUTPUT
<TABLE border=1>
<TR><TD bgcolor=AAAAAA>連続稼働時間</TD><TD align=center...
</TABLE>
<BR>
<TABLE border=1>
<TR><TD bgcolor=AAAAAA>負荷状況(1/5/15min)</TD><TD align...
</TABLE>
$LA3A
<BR>
EOF
# Memory
echo "<TABLE border=1>" >> $OUTPUT
echo "<TR bgcolor=AAAAAA><TD align=center width=100>種類...
free -m | grep "Mem" | awk '{printf "<TR><TD>Physical Me...
free -m | grep "Swap" | awk '{printf "<TR><TD>Swap Mem</...
echo "</TABLE><BR>" >> $OUTPUT
# Disk Space
echo "<TABLE border=1>" >> $OUTPUT
echo "<TR bgcolor=AAAAAA><TD width=70>マウント</TD><TD w...
df -m | grep -v none | grep -v Filesystem | grep \/dev |...
echo "</TABLE><BR>" >> $OUTPUT
#vmstat
echo "<TABLE border=1>" >> $OUTPUT
echo "<TR bgcolor=AAAAAA><TD align=center width=100 cols...
vmstat -n | grep -v procs | awk '{printf "<TR align=cent...
echo "</TABLE><BR>" >> $OUTPUT
cat <<EOF >> $OUTPUT
<TABLE>
<TR><TD colspan="2">vmstatの読み方</TD></TR>
<TR><TD>r:</TD><TD>CPU へのアクセスを待っているプロセス...
<TR><TD>b:</TD><TD>割り込み不可能なスリープ状態にあるプ...
<TR><TD>bi:</TD><TD>ブロックデバイスから受け取ったブロッ...
<TR><TD>bo:</TD><TD>ブロックデバイスに送られたブロック (...
<TR><TD>in:</TD><TD>一秒あたりの割り込み回数。クロック割...
<TR><TD>cs:</TD><TD>一秒あたりのコンテキストスイッチの回...
<TR><TD>us:</TD><TD>カーネルコード以外の実行に使用した時...
<TR><TD>sy:</TD><TD>カーネルコードの実行に使用した時間 (...
<TR><TD>id:</TD><TD>アイドル時間。Linux 2.5.41 以前では...
<TR><TD>wa:</TD><TD>IO 待ち時間。Linux 2.5.41 以前では、...
</TABLE>
EOF
# HTML Footer
cat <<EOF >> $OUTPUT
</CENTER>
</BODY>
</HTML>
EOF
## ReMark
#mv $OUTPUT $TEMP
#sed 's/>active/ bgcolor=00FF00>active/g' $TEMP > $OUTPUT
#rm $TEMP
#mv $OUTPUT $TEMP
#sed 's/>inactive<\/TD>/ bgcolor=FF5555>inactive<\/TD>/g...
#rm $TEMP
#mv $OUTPUT $TEMP
#sed 's/>F/ bgcolor=FF5555>/g' $TEMP > $OUTPUT
#rm $TEMP
#mv $OUTPUT $TEMP
#sed 's/<TD><\/TD>/<TD>-<\/TD>/g' $TEMP > $OUTPUT
#rm $TEMP
# End
echo Content-type: text/html
echo
cat $OUTPUT
rm -f $TEMP
rm -f $OUTPUT
# EOF
ページ名: