infoTek Server Status Checker

version 1.0.0
last update:05.08.2003

はじめに

サーバ管理者をしていて、Webサーバの異常を自動的に通知してくれればいいなと思った事はありませんか?
ネットワーク構成の変更の度に、時間差で影響を受ける事が多いWebサーバの状態を監視しつづける 事に疲れていませんか?
そんな方は是非、一度Server Status Checkerをお試し下さい。
Server Status Checker(以下、本ソフトウェア)は、指定されたサーバの状態をチェックし、 メールにて自動的に通知するサービスプログラムです。
チェックできるサーバの種類はHTTPサーバ・FTPサーバ・SMTPサーバの3種類です。
本ソフトウェアを使用すれば、例え貴方がマッターホルンでスキーを楽しんでいても、 サンセットビーチで寝転がっていても、サーバに異常が発生すれば、メールにて自動的に通知してくれます。

特長

本ソフトウェアには下記のような特長があります。

サービスとして稼動する

24時間監視させる場合、心配になるのが、監視させるコンピュータのセキュリティです。
その点本ソフトウェアはサービスとして稼動しまので、コンピュータにログインする必要がありません。
コンピュータの電源が入っている必要はありますが、常駐プログラムのようにログインする必要が 無いため、セキュリティ上のリスクを軽減出来ます。

異常発生時にメールにて異常を告知する

監視ソフトの働きの一つに、管理者がコンピュータを離れていても、かわりに監視し、異常を知らせると いう点が上げられます。
本ソフトウェアは監視対象となるサーバに異常が発生した場合、メールにより異常を通知します。
画面にウィンドウをポップアップして通知するソフトウェアと違い、画面を常に監視している必要はありません。

複数サーバをチェック可能

サーバ管理者ともなれば、複数のサーバの管理をする事もあると思います。
本ソフトウェアは監視するサーバを複数登録出来ます。
ホスティングサービスを行っているなどで、複数のWebサーバの状態を監視する必要 がある場合にも対応出来ます。

インターネット上の複数の種類のサーバをチェック可能

インターネット上で公開しているサーバはHTTPサーバだけではありません。
メールの送受信を行うSMTPサーバや、場合によってはFTPサーバも公開しているでしょう。
本ソフトウェアではSMTPサーバ・HTTPサーバ・FTPサーバの3種類のサーバのチェックが行えます。

オリジナルメッセージでのメール送信が可能

本サービスから送信されるメールはテンプレートにより、メールの題・文面を作成出来ます。

設置・起動方法

動作条件

本ソフトウェアは下記の環境で動作します。

項目条件
OSWindows NT4 SP6, 2000 Pro, 2000 Server, XP Pro
ハードウェアOS欄のOSが正常稼動する環境
HDD1MB程度の空き容量
※ログを生成するための容量が別途必要です。
ユーザー権限設置には管理者(Administrator)権限が必要です。
※稼動させる時は必要ありません。

設置

任意のディレクトリに下記のファイルを設置してください。

+[任意のディレクトリ]               --------------本ソフトウェアを設置するディレクトリ
  | srvchk_service.exe             --------------本ソフトウェア
  | srvchk_service.cfg             --------------コンフィグレーションファイル
  | readme.html                    --------------本ファイル
  | license.txt                    --------------ライセンス規定ファイル
  + [log]                          --------------ログ保存用ディレクトリ(初期状態は空です)
  + [template]                     --------------メールテンプレート用ディレクトリ
    | normal_mail.txt              --------------ステータス正常時用メールテンプレートサンプル
    | normal_subject.txt           --------------ステータス正常時用メールサブジェクトテンプレートサンプル
    | error_mail.txt               --------------ステータス異常時用メールテンプレートサンプル
    | error_subjet.txt             --------------ステータス異常時用メールサブジェクトテンプレートサンプル

サービスの登録

コマンドプロンプトより、本ソフトウェアを設置したディレクトリに移動後、 srvchk_service.exe を 下記のように -create オプションをつけて実行してください。

    srvchk_service.exe -create

下記のようなメッセージが表示されれば成功です。

  
infoTek Server Status Checker version 1.0.0
copyright (c) 2000-2003 infoTek K.K. all rights reserved.
service 'infoTek Server Status Checker' is created.

これでサービスが登録されました。次回マシン起動時にはログインしなくても自動的に起動されます。
もしこの様に表示されていなかった場合は、パスが正しいか、必要なファイル・ディレクトリは 揃っているか等を確認して、再度実行してください。

サービスの起動・停止

サービスを起動・停止するには2つの方法があります。 Windowsの設定画面より行う方法と、コマンドプロンプトから行う方法です。
ここではコマンドプロンプトより実行する方法を説明します。

起動

コマンドプロンプトより本ソフトウェアを起動する場合、 srvchk_service.exe を下記のように -start オプションをつけて実行してください。

srvchk_service.exe -start

下記のようなメッセージが表示されれば成功です。

  
infoTek Server Status Checker version 1.0.0
copyright (c) 2000-2003 infoTek K.K. all rights reserved.
service 'infoTek Server Status Checker' is started.

下記のようなメッセージが表示された場合、サービスが登録されていません。 「サービスの登録」を参照し、サービスを登録してください。

  
infoTek Server Status Checker version 1.0.0
copyright (c) 2000-2003 infoTek K.K. all rights reserved.
service exception detected(90002):cannot open service
internal code:1060(424) service does not exist

停止

コマンドプロンプトより本ソフトウェアを停止する場合、 srvchk_service.exe を下記のように で -stop オプションをつけて実行してください。

例)C:\WEB_CHECKに設置した場合

srvchk_service.exe -stop

下記のようなメッセージが表示されれば成功です。

  
infoTek Server Status Checker version 1.0.0
copyright (c) 2000-2003 infoTek K.K. all rights reserved.
service 'infoTek Server Status Checker' is stopped.

下記のようなメッセージが表示された場合、サービスは既に停止しています。

  
infoTek Server Status Checker version 1.0.0
copyright (c) 2000-2003 infoTek K.K. all rights reserved.
service exception detected(90006):cannot control servce
internal code:1062(426) sevice not active

意図せずに停止していた場合、何らかの異常が原因で停止したと考えられます。
その場合は、logディレクトリ下に生成されるsrvchk_service_yyyymm.logをチェックしてください。
yyyyは4ケタの西暦、mmは2ケタの月になります。

サービスの登録解除

本ソフトウェアの登録を解除する場合、本ソフトウェアが停止している事を確認してください。 確認後、コマンドプロンプトより、 srvchk_service.exe を下記のように -delete オプションをつけて実行してください。

srvchk_service.exe -delete

下記のようなメッセージが表示されれば成功です。

  
infoTek Server Status Checker version 1.0.0
copyright (c) 2000-2003 infoTek K.K. all rights reserved.
service 'infoTek Server Status Checker' is deleted.

本ソフトウェアの削除

本ソフトウェアをアンインストールする場合は、まず「サービスの停止」「サービスの登録解除」の処理を行ってださい。 その後、本ソフトウェアを設置したディレクトリを削除してください。

コンフィグレーションファイル

本ソフトウェアの設定はコンフィグレーションファイルによって行います。 コンフィグレーションファイルは本ソフトウェアと同じディレクトリにある srvchk_service.cfgとなります。 コンフィグレーションファイルの内容はノートパッド等のテキストエディタで 編集する事が出来ます。 コンフィグレーションファイルは主に「SERVICEセクション」「SMTPセクション」 「CHECKURLセクション」の3つのセクションに分かれます。 各項目の内容は次のようになります。

[SEVICE]セクション

[SERVICE] セクションには当サービスアプリケーションの諸設定を指定します。

項目内容必須
admin エラーメッセージの通知等を行う管理者のメールアドレスを 'admin=xxxxxxx@infotek.co.jp' で指定します。
複数のメールアドレスを指定する場合には ',' で区切って列挙します。この指定は必須です。
check_span 指定されたサーバをチェックするタイミングを 'check_span=xxxx' で10分単位 で指定します。
 
check_time 指定されたサーバをチェックするタイミングを 'check_time=xx:xx' で指定します。
','で区切る事により複数指定出来ます。

※check_span の設定よりもこちらが優先されます。
 
disable サービスの起動中にメールなどの確認やチェック先URLへのアクセスを無効にする 時間を'disable=xx:xx-xx:xx' で指定します。
例えば夜間データーベースのバックアップなどでWebサービスを停止する場合等に その時間を指定します。 デフォルトでは零時から五時まで(00:00-05:00)です。指定の無い場合には 00:00-00:00 とします。
 
no_check_url チェックするURLの数を'no_check_url=x'にて指定します。
xには1以上の整数を指定してください。 CHECKURLセクションにxを超える数が登録してあっても、こちらの値が有効になります。

[SMTP]セクション

[SMTP]セクションには当サービスで使用する SMTP サーバー等に関する諸設定を指定します。

項目内容必須
smtp_server SMTP サーバーのアドレスを 'smtp_server=xxxx' で指定します。
smtp_type SMTP に関する設定を 'smtp_type=xx' で指定します。
     通常の方法で送信        11
     POP before SMTP        21
CHECKURLセクションで特に指定が無い場合は、こちらの指定に基づいてメールが送信されます。
user POP before SMTP の際に使用するユーザーIDを 'user=xxxx' で指定します。
 
pwd POP before SMTP の際に使用するユーザーPWDを 'pwd=xxxx' で指定します。
 
pop_server POP before SMTPでPOPサーバとSMTP サーバーが異なる場合、POPサーバのアドレスを 'pop_server=xxxx' で指定します。  
from メールを送信する際に使用する Fromのメールアドレスを 'from=xxxx' で指定します。
CHECKURLセクションで特に指定が無い場合は、こちらの指定に基づいてメールが送信されます。
from_name メールを送信する際に使用する From のユーザー名を'from_name=xxxx' で指定します。
CHECKURLセクションで特に指定が無い場合は、こちらの指定に基づいてメールが送信されます。
 
to メールを送信する際に使用する To のメールアドレスを'to=xxxx' で指定します。
CHECKURLセクションで特に指定が無い場合は、こちらの指定に基づいてメールが送信されます。
cc メールを送信する際に使用する Cc のメールアドレスを'cc=xxxx' で指定します。
CHECKURLセクションで特に指定が無い場合は、こちらの指定に基づいてメールが送信されます。
bcc メールを送信する際に使用する Bcc のメールアドレスを'bcc=xxxx' で指定します。
CHECKURLセクションで特に指定が無い場合は、こちらの指定に基づいてメールが送信されます。
reply_to メールを送信する際に使用する Reply_To のメールアドレスを'reply_to=xxxx' で指定します。
CHECKURLセクションで特に指定が無い場合は、こちらの指定に基づいてメールが送信されます。
normal_mail ステータス正常時に送信するメールの本文の記述してあるテキストファイルを'normal_mail=' で指定します。
CHECKURLセクションで特に指定が無い場合は、こちらの指定に基づいてメールが送信されます。
指定されたファイルが読み込めなかった場合はソフトウェアが自動的に文章を生成します。
normal_subject ステータス正常時に送信するメールの件名の記述してあるテキストファイルを'normal_subject=' で指定します。
指定されたファイルの中に文章が複数行ある場合、先頭の一行のみが反映されます。 CHECKURLセクションで特に指定が無い場合は、こちらの指定に基づいてメールが送信されます。
指定されたファイルが読み込めなかった場合はソフトウェアが自動的に文章を生成します。
error_mail ステータス異常時に送信するメールの本文の記載してあるテキストファイルを'error_mail=' で指定します。 CHECKURLセクションで特に指定が無い場合は、こちらの指定に基づいてメールが送信されます。
指定されたファイルが読み込めなかった場合はソフトウェアが自動的に文章を生成します。
error_subject ステータス異常時に送信するメールの件名の記述してあるテキストファイルを'error_subject=' で指定します。 指定されたファイルの中に文章が複数行ある場合、先頭の一行のみが反映されます。 CHECKURLセクションで特に指定が無い場合は、こちらの指定に基づいてメールが送信されます。
指定されたファイルが読み込めなかった場合はソフトウェアが自動的に文章を生成します。

[CHECKURL]セクション

[CHECKURL]セクションにはステータスをチェックする対象に対する情報を設定します。

項目内容必須
target_url ステータスをチェックするURLを'target_url=' で記載します。
ポート番号の指定が必要な場合はサーバーの後に:XXでポート番号を指定します。
指定しなかった場合は各サーバタイプで一般的に使われているポートを使用してアクセスします。

例) http://www.infotek.co.jp:8080/index.html

・HTTPサーバの場合はhttp://もしくはhttps://ではじめて下さい。
・FTPサーバの場合はftp://ではじめて下さい。
・SMTPサーバの場合はmail://ではじめて最後は/で終わるようにして下さい。
SMTPサーバの場合は接続テストのみになります。
check_levelにてすべてのプロセスを行うを指定しても、接続テストのみになります。
target_user チェック対象となるサーバが FTP サーバの場合、ログインに使用するユーザーIDを'target_user=XXXX' で指定します。  
target_pwd チェック対象となるサーバが FTP サーバの場合、ログインに使用するパスワードを'target_pwd=XXXX' で指定します。  
check_level メール送信するステータスやチェックする際のレベルを'check_level=' で指定します。
          すべてのステータスを通知           1
          エラー発生時のみ通知               2
          すべてのプロセスを行う            10
          接続テストのみを行う              20
    例) 接続テストのみを行い、エラー発生時のみ通知してもらう場合
           check_level=22

※何も指定しなかった場合は、すべてのプロセスでチェックを行い、エラー発生時のみ通知します。 (check_level=12を指定した場合と同じ動作です。)
※SMTPサーバの場合は接続テストのみになります。
(すべてのプロセスを行うを指定しても、接続テストのみになります。)
 

設定サンプル

設定例を示します。

設定例設定内容
[SERVICE]
admin=xxxx@xxxx.xx.xx
check_time=08:00,20:00        
disable=00:00-07:00           
no_check_url=4                

[SMTP]
smtp_server=mail.xxxx.xxxx.xxxx
smtp_type=11                  
from_name=ServerAdmin         
from=server_admin@xxxx.xxxx.xxxx
to=server_admin@xxxx.xxxx.xxxx
normal_mail=normal.txt
normal_subject=normal_subject.txt
error_mail=error.txt
error_subject=error_subject.txt

[CHECKURL_1]
target_url=http://www.wwwwww.ww.jp/
check_level=11

[CHECKURL_2]
target_url=mail://mail.xxxx.yyyyy.jjjjj/
check_level=11

[CHECKURL_3]
target_url=ftp://ftp.ssss.zzzz.xxx/file.list
target_user=anonymous
target_pwd=wwww@xxxx.yyyy.jjjj
check_level=21

[CHECKURL_4]
target_url=https://www.xxxx.yy.zz/index.html
check_level=22

[SERVER]セクション
  • 午前8時と午後8時にチェック
  • 午前0時から午前7時の間はチェックしない
  • 各対象サーバにはプロキシ経由で接続する
[SMTP]セクション
  • 使用するSMTPサーバは通常のSMTPサーバ
  • メールは "ServerAdmin"<server_admin@xxxx.xxxx.xxxx> からメールが来る
[CHECKURL_1]セクション
  • 対象となるサーバは http://www.wwwwww.ww.jp/(HTTPサーバ)
  • ファイルの取得までテストし、成功・失敗に関わらず管理者に通知する。
[CHECKURL_2]セクション
  • 対象となるサーバは mail.xxxx.yyyyy.jjjjj(SMTPサーバ)
  • ファイルの取得までテストする指定ですが、メールサーバは接続テストのみ行えます。
  • 成功・失敗に関わらず管理者に通知する。
[CHECKURL_3]セクション
  • 対象となるサーバは ftp://ftp.ssss.zzzz.xxx/file.list(FTPサーバ)
  • 接続までテストし(ファイルの取得は行わない)、成功・失敗に関わらず管理者に通知する。
[CHECKURL_4]セクション
  • 対象となるサーバは https://www.xxxx.yy.zz/index.html(HTTPサーバ)
  • 接続までテストし(ファイルの取得は行わない)、失敗時のみ管理者に通知する。

ライセンス規定

本ソフトウェアは「インフォテック 無償ソフトウェア ライセンス規定」に準じます。 同ライセンスについては同梱のライセンス規定ファイル(license.txt)をご参照ください。

免責事項

本ソフトウェアを使用することでいかなる損害が生じても、当社は一切責任を負いません。

その他

本ソフトウェアに関するサポートは提供しておりませんが、ご意見、ご感想、ご要望などがございましたら、下記までお寄せください。

  インフォテック株式会社  
  E-mail:support@infotek.co.jp  
  Home Page: http://www.infotek.co.jp/  

更新履歴

05.08.2003 ver1.0.0
「infoTek Server Status Checker」を作成・公開

copyright (c) 1997-2003 all rights reserved by infoTek K.K.