サーバの状態を監視してサーバおじさんに HipChat で怒ってもらう

踏み台サーバを起動して作業し終わったら落とすって運用をしてるけど、 ときどき落とし忘れているときがあってよくない。

なので対象サーバのポートを一定間隔で確認して HipChat に投げることにした。 これでサーバが起動しっぱなしになっていてもすぐ把握することができる。

Token の取得

通知には対象 Room の ID と Token が必要。

Token は、HipChat にログインして Rooms > 対象Room > Tokens と移動、「Room Notification Tokens」の作成で取得する。 このときに指定した「Label」が HipChat での名前になる。

Room ID もここで参照できるので控えておく。

シェルスクリプトの準備

netcat でポートスキャンして curlAPI に投げているだけのベタ書きスクリプト

取得した HipChat の情報を入れて crontab に設定して完了

gist9876555

HipChat への通知

指定ホストの指定ポートが開いていると通知が飛ぶ。 実際の通知はこんな感じ

通知内容を変えたいとき

通知内容をカスタムしたい場合は以下を参照して json の内容を変えればよい