サーバの死活監視システムにはいろいろなサービス・サイトがありますが、検証環境などのクローズドな環境について監視をさせたい場合など、Jenkinsを高機能なcronとしてサーバの死活監視をさせる方法です。
ビルドとしてシェルの実行に以下を記載します。
#!/bin/bash TRY=3 TIMEOUT=10 COUNT=0 #################START######################### URL="http://hoge.com" echo "URL $URL" CHECK=`wget -nv -S --spider -t $TRY -T $TIMEOUT --no-check-certificate $URL 2>&1|grep -c "200 OK"` if [ $CHECK == 0 ] then COUNT=`expr $COUNT + 1` echo "***ERROR $URL" fi #################END########################### ########################################## exit $COUNT
シェルが0以外を返すとエラーとして判断されるので、exit $COUNTとしてエラーの数を返すようにしています。
あとはこれを定期実行させてエラー時にメール送信させれば簡易的な死活監視が行えます。
Jenkinsだと実行させる時間帯も簡単に指定できるので、検証環境なので平日日中だけ監視させておくなどが簡単に行えます。