Webサイト監視サービスは山のようにあるんですが、Uptime RobotとStatusCakeがいい感じです。
- どちらもFree planで監視数が多い
- Free planで基本的な機能が提供されている
- ページがわりとモダン
- 他のサービスだとWeb 1.0を地でいくものや、Web 1.5的リッチUIが多いような…
- Web APIがある
ちょっと前までStatusCakeを知らなくて、Uptime Robot以外の監視サービスで自サービスの死活監視するとしたらPingdomかなぁ…と思ってたんですが、StatusCakeを見つけて「貧民でも可用性の高い死活監視ができるぞ」と喜んでいるところです。ありがたいことです。
Uptime Robot
- ポリシーとしてできる限り無料で提供するみたいです
- 最大監視数は50
- HTTP/HTTPS/キーワード/Ping/Port
- 通知はe-mail/twitter/HTTP/SMS/Slack・HipChat連携等々
- SMSは日本未対応。残念
- Webコンソール触ってるとたまにバグっぽい挙動に当たることがありました
- APIたたくと即反映されるんですが、情報取得系APIがキャッシュされてるらしく/getMonitorsの内容が更新されるまでに30秒ぐらい必要です
StatusCake
- freeプランで監視数無制限
- HTTP/HTTPS/Port/Ping/DNS/SMTP/Minecraft
- 通知はe-mail/HTTP/SMS/電話
- SMSの日本対応状況不明。電話は日本でもかかるのかな…?
- freeプランだとAPI呼び出しは250回/日
Rubyライブラリ書いた
既存のライブラリはどっちもあるんですが、インターフェースがいまいちだったので、車輪の再発明しました
どっちもWeb APIの薄いラッパーで、API Referenceを読めばそのまま使えるような感じ…だと思います。 しかし、StatusCakeのAPIはいまいちな感じが。特にTestの削除とか。
Uptime RobotをDSLで操作できるようにした
いつもの技芸としてUptime RobotをDSLで操作できるようにしました。 https://github.com/winebarrel/watch_list
以下のようなDSLで、Uptime Robotの監視を定義できます。
monitor "http monitor" do target "http://example.com" interval 5 paused false alert_contact :email, "alice@example.com" type :http end alert_contact do type :email value "alice@example.com" end
ただし、前述のとおり情報取得系APIへの更新情報の反映にタイムラグがあるので適用直後だと実際に更新済みなのに差分がでたりします。
StatusCakeもそのうちDSL化したいところ。