• ベストアンサー

Windowsでのプロセス監視方法について

いつもお世話になっています。 現在、Windows2003サーバにて稼働しているバッチプログラムがあります。 冗長化されておらず、サーバがダウンすると他のマシンにてスタンバイされているプログラムを手動で実行しなくてはならず、深夜などは回復まで時間がかかってしまう状況です。 理想としては、現在稼働しているマシンがダウン、もしくはバッチプロセスが何らかの理由で落ちてしまった場合は、 もう片方のマシンでそれを検知し、そのマシンで自動的にバッチが起動する、というような状態にしたいのですが、 何か簡単な方法がありましたら、概要だけで構わないのでご教授いただけませんでしょうか?

質問者が選んだベストアンサー

  • ベストアンサー
noname#17296
noname#17296
回答No.3

私なら cscriptのsleepで定期的に処理を止め永久ループ Windowsスクリプトのtasklistで対象のシステムのプロセスを検知 errorlevelで判断し、自システム内プロセス起動後、当処理終了 なんてな感じにするような気がします。

その他の回答 (2)

  • CXI00554
  • ベストアンサー率27% (57/205)
回答No.2

こういう目的の製品としてはSNMPを利用した仕掛けがあるので検索して見て下さい。 後は…んー。Cでpingコマンド書くとか。サーバ側にノータッチという制約 があると、すみませんがちょっと思いつきません。

yukio200263
質問者

お礼

ご回答ありがとうございます。 WSHを利用してのプロセス監視ができるというような話を聞いたのですが、実際はどうなのでしょうか?

  • CXI00554
  • ベストアンサー率27% (57/205)
回答No.1

相手マシンがダウンしているかどうかを検知する方法としては、 (1)相手マシンから定期的に何かメッセージを送信させ、こちらではそれを 監視。(2)メッセージが届かなくなったら以上と判断して必要なアクションを起こす。 というような仕掛けになると思います。JavaやCなどで実装できると思います。 あくまでも概要ですが。

yukio200263
質問者

お礼

さっそくのご回答ありがとうございます。 質問に書き忘れたのですが、できれば現在動いているサーバはなるべく何も変更せず、新規サーバを一台追加して、そのマシンにプロセス監視プログラムのようなものを設定し動かす、見たいなのが望ましいのですが、そのようなソフト、もしくは適した言語などありましたらご教授ください

関連するQ&A