StatusBase (status-base/statusbase-nuxt) は、ウェブサイトの運用状況を記録して表示するためのツールです。
AWSとかTwitter APIとか、サービスの提供状態を時系列でまとめて出しているページが、サービス本体とは別のところに(=本体が落ちても巻き込まれないように)公開されていますよね。ああいうページをセルフホストで作るためのものです。
Vue + Nuxt.js で作られ、オープンソースで公開されている StatusBase は、モニターした対象サイトの up/down を git のコミットで記録していきます。GitHub Actions で定期実行させ、Nuxt で紹介されている多種のホスティングサービスに結果を送るように設定すれば、それだけで一定時間おきに指定したサイトの状態をコミットして、直近の履歴を表示してくれました。
サイトのダウンに関してレポートを載せたい場合は、これも markdown のドキュメントを置くだけ。
サイトがダウンした時はeメールで通知もしてくれるのですが、これも GitHub issues を使って実現しています。
作者の @zernonia さんによれば、監視部分のスクリプトの GitHub Actions による定期実行は時刻の正確性に欠けるということです。個人のホビーサイトではそれほど気にならないとは思いますし、無料枠でここまで簡単に動かせてしまうのが申し訳ないぐらいですね。
Introducing StatusBase!!! (yes another apps 😂)
A git-based website monitoring tools powered by @nuxt_js Content v2!
🤩 Free & Open-Source
🚀 Easy deploy
📝 Write report in Markdown
0️⃣ Zero dependency on other service
🔔 Notify when site is down (WIP)https://t.co/QRfPYbRRqQ— Zernonia (@zernonia) May 26, 2022
via twitter