欲しいもの
webサイトが動いているか定期的に確認してくれて、動いてないときは通知してくれるプログラム。
作ったもの
st34-satoshi/website-monitoring: Website Monitoring
できること
指定したurlにアクセスして、response.bodyの中に期待する文字列があるか確認する。
期待する文字列がなければSlackに通知する。設定で全てのサイトに問題がないときでもSlackに通知できる。
アーキテクチャ
pythonでurlにリクエストを送って期待する文字列が含まれるか確かめる。エラーの通知などもpythonで行う。pythonの実行環境はdockerコンテナに閉じ込める。
Linuxのcronで定期的に実行する。webサイトの監視は1時間ごとに行う。正常のメッセージを送るのは1日に1回実行する。
cronの設定方法: Cronを使用して定期的にプログラムを実行する | Notes to Forget
終わりに
2022年の1月くらいにいつか作ろうと思って実際にできたのは11月だった。
あったらいいけどなくても困っていないものを作るのはモチベーションが続かなくて大変。実際の作業時間は20時間くらいだったと思う。
Comments