up_l dmy up_r
dmy home dmy dmy dmy

●サーバー監視スクリプト(HttpdChk)●

プロバイダから貸してもらえるWEBスペースはperl、telnet、ssh、cron等が使えるので、以前から自宅サーバーを
監視する為にhttp接続を行うperlスクリプトを書いて(ついでにwgetもインストールして)ずっと監視していたのですが、
結構適当に作ったスクリプトだったのでちゃんと作り直りなおしました。
wgetや余計なライブラリ、モジュール等をできるだけ使わないようにしました。

■主な機能
» Socketを使用したhttp接続のチェック(SSL非対応)
» http接続時にGETしたソースの1行目の文字列の判定
» スクリプトの二重起動を防ぐ排他処理
» 監視対象ホストを複数設定可能
» エラー通知の宛先を複数設定可能

■ダウンロード
» HttpdChk.zip

■添付されているもの
1.スクリプト本体
» HttpdChk.pl
2.設定ファイル
» HttpdChk.conf
3.監視結果記録用ファイル
» HttpdChk.res
4.マニュアル
» README.txt

■導入方法
【1】HttpdChk.plの設定

------------------------------------------------------------------------
01:#!/usr/bin/perl -w
・
・
・
26:my $ScriptDir   = '/PathTo/HttpdChk';
28:my $SendMail    = '/usr/lib/sendmail';
30:my $MailFrom    = 'from@example.jp';
32:my $Subject     = 'httpd alert';
34:my $MaxCount    = 3;
36:my $LockTimeout = 20;
38:my $ConnTimeout = 10;
------------------------------------------------------------------------

01行目:perlのパス
26行目:作業ディレクトリ(HttdpChkディレクトリまでのフルパス)
28行目:sendmailまでのパス
30行目:エラー通知の送信者メールアドレス
32行目:エラー通知の件名
34行目:何回エラーが出たらエラー通知を送信するか
36行目:前回の処理が終わっていない場合の待機時間(秒)
38行目:http接続が成功するまでの待機時間(秒)

【2】HttpdChk.confの設定
▼以下のフォーマットに基づいて記述します。

[Host][:Port][/Path] [Space|Tab] [SendEmail1,2,3...] [Space|Tab] [SuccessfulMessage]

» [Host]
監視対象ホスト。
» [:Port]
監視対象ホストのポート(指定が無い場合は80で接続)。
» [/Path]
監視対象ホストのファイル、ディレクトリ。
» [Space|Tab]
設定の区切り(半角スペース若しくはタブ)。
» [SendEmail1,2,3...]
エラー通知の送信先メールアドレス(複数指定する場合は「,」で区切る)。
» [Space|Tab]
設定の区切り(半角スペース若しくはタブ)。
» [SuccessfulMessage]
httpd接続に成功した場合にGETしたソースの1行目の文字列。
主に監視対象ホストのhttp接続以外のチェックに使用します。
例)
監視対象ホストにデータベース接続が正しくできるかチェックするスクリプト(dbcheck.cgi)を設置して
www.example.jp/dbcheck.cgi     to@example.jp     Database connection successful
と設定。

dbcheck.cgiは接続に成功した場合は
print "Content-Type:text/plain\n\n";
print "Database connection successful\n";
を出力
dbcheck.cgiは接続に失敗した場合は
print "Content-Type:text/plain\n\n";
print "エラーメッセージ\n";
を出力

※詳しくはHttpdChk.conf記載のサンプルをご覧ください。

【3】サーバーへ設置

HttpdChk.pl[700]
HttpdChk.conf[644]
HttpdChk.res[644]
※[ ]はパーミッション。

上記の入ったHttpdChkディレクトをサーバーに設置します。

最後にHttpdChk.plをcronに追加して完了です。

▲TOP

簿記試験 合格 | ソフトバンクホークス | スキー場 | 温泉 | 大阪名物
dmy
low_l dmy low_r