特定のサイトを簡単に監視したい
概要
指定したURL先のステータスコードを監視したい。
今回はステータスが200になったらLINEに通知を飛ばす。
使用したもの
- AWS EC2
- shell
- LINE Notify
つくりかた
1. AWSのEC2を立てる
2. Line Notifyのトークンをゲットする
3. shell scriptsを以下のかんじで書いてテキトウな場所に配置
#!/bin/sh url=http:{{監視したいURL}} ACCESS_TOKEN={{2で取得したトークン}} status=`/usr/bin/curl -LI $url -o /dev/null -w "%{http_code}" -s` if [ $status = 200 ]; then curl -X POST -H "Authorization: Bearer $ACCESS_TOKEN" -F "message=$status" https://notify-api.line.me/api/notify curl -X POST -H "Authorization: Bearer $ACCESS_TOKEN" -F "message=メッセージ" https://notify-api.line.me/api/notify else echo $status fi
4. cronに設定
*/5 * * * * source /home/ec2-user/urlwatch.sh
補足
LINE NotifyのAPIドキュメントはこちら。