PINGを無効化しているサーバでも使えますね。 Webサーバの死活管理はしていますか?仕組みは簡単ですが、それだけに作りが煩雑になってしまいがちです。サーバが1〜2台であればまだしも、10台を越えたあたりから管理が面倒になるはずです。 そこで一元管理できるPingpongを紹介します。とてもシンプルな仕組みで利用できます。

Rubyで作られており、インストールは下記手順で終わります。

$ git clone git@github.com:keenlabs/pingpong.git
$ cd pingpong
$ bundle install

終わったら、まずはrake checks:addを実行して監視対象のサーバを追加します。対話型に進めていけるので迷いなく追加できるでしょう。なお、Pingpongの特徴としてGETだけでなくPOSTパラメータも飛ばせます。

Webサーバの追加が終わったら、rake checks:runを実行すれば設定に従って定期的にアクセスを行ってくれます。

実行中。レスポンスタイムも返ってきます。

その他のコマンドは以下の通りです。

$ rake -T
rake checks:add                # Create a checks.json file
rake checks:run                # Run checks; useful for a worker
rake checks:run_once[filters]  # Run checks once, useful for debugging
rake keen:count                # Print Keen IO check counts
rake keen:delete               # Delete Keen IO collection - use with ca...
rake keen:duration             # Print Keen IO check duration averages
rake keen:extract              # Extract Keen IO checks
rake keen:workbench            # Print Keen IO workbench URL
rake spec                      # Run Rspec unit tests

WebサーバやWeb APIの死活管理に使ったりできそうです。設定ファイルはJSONなので、後からカスタマイズするのも難しくないように見えます。

PingpongはRuby製のオープンソース・ソフトウェア(MIT License)です。

keenlabs/pingpong