LoginSignup
6
10

More than 3 years have passed since last update.

超お手軽!!LINEを使ったwebサーバーの監視

Last updated at Posted at 2018-05-24

はじめに


別に商用環境でもないし、そんなに真面目にやらなくてもいいんだけど
webサーバーの死活判断を「簡単に」やりたいなぁ(´・ω・`)
しかも、メールじゃなくてLINEに通知こないかなぁ(`;ω;´)
そんなあなたに2分で作れるweb監視ツール(?)のご紹介

用意するもの


  1. 監視したいwebサーバー
  2. 監視するサーバー
  3. LINEのアカウント
  4. 2分の時間

以上!!

さぁ作るぞ!!


監視するサーバーで作業
どこでもいいですが、下記ファイルを作成
(今回はホームディレクトリにおいてます)

emergency.sh
#!/bin/bash

file1=index.html
file2=.emergency

wget https://hogehoge.com >/dev/null 2>&1

if [ -e $file1 ]; then
    rm -f $file1
    rm -f $file2
else
    if [ ! -e $file2 ]; then
        curl -X POST -H 'Authorization: Bearer aaaaaaaaaaaaaaaaa' -F 'message=webサーバーに異常が発生中です。' https://notify-api.line.me/api/notify >/dev/null 2>&1
        touch $file2
    fi
fi

※1 hogehoge.comは監視したいwebサーバのドメインを記載
※2 aaaaaはこちらを参考に、発行したLINEのトークンを記載

最後にcrontabにでも仕込めばおしまい

*/1 * * * * sh ~/emergency.sh

(今回は1分おきでの監視)

終わり!!!!!!!!!!!
お疲れ様でした。

ちょっと解説


解説するまでもないと思いますが、今回のスクリプトの動作は
1. 対象webサーバーにwgetをかけて、ファイルをダウンロード
2. ダウンロードできれば、ダウンロードファイルの存在を検知して、ダウンロードしたファイルと異常検知用ファイル(emergency)を削除して終了
3. ダウンロードができず、かつ異常検知用ファイルがなければLINEで通知
4. 異常検知用ファイルを生成
となってます。

異常検知用ファイルは作らなくてもいいんですが、作らないとダウンしたwebサーバーを修復するまで、1分おきにLINEに通知が来るので、鬱陶しい人向け用においておきました。

ブログ始めました、よかったら遊びに来てください
https://red-full-moon.com/

6
10
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
6
10