curl、crontabなどを使ってページが正しく表示されていない場合にメールで通知するように設定してみた。
まずcurlを使ってページの情報を取得する。
curl "example.com"
でページの情報を表示できる。今回はオプションは使わなかった。 あらかじめ正常なページに含まれる文字列の一部を判定用キーワードとしてシェルスクリプトに入力しておき、curlで表示された内容からキーワードをgrepやcutなどで抽出したものと比較して一致すれば正常、しなければ異常として判定した。 正常なページに”keyword”が含まれる場合
A="keyword" curl "nagatsuka.testtotest.com" | grep "keyword" > sample B=`cut -f 2 -d "\"" sample|uniq`
こんなふうなシェルスクリプトを作った。
これを自動で定期的に実行するためcrontabを使用した。 今回は毎分実行するようにしたので、次のようになった。
*/1 * * * * /root/observe.sh