個人開発で一番怖いのは,「ユーザーに言われて初めて落ちていたと知る」瞬間だ.監視とアラートを組めば,それは過去のものになる.
対象はVPSでサービスを公開している個人開発者.読み終えたとき,最小コストで「異常に気づける」体制の作り方が掴めます.
なぜ監視を後回しにしてはいけないか
サービスは静かに落ちる.プロセス停止・ディスク満杯・メモリ枯渇は,画面を見ていなければ気づけない.
監視が無いとダウンタイムが信頼の損失に直結する.逆に最小限の監視でも,検知が早ければ被害は小さく抑えられる.
3層で考える ― 死活・リソース・ログ
監視は(1)死活監視 (2)リソース監視 (3)ログ監視の3層で捉える.まず生きているか,次に余裕があるか,最後に何が起きているか,だ.
- 死活:サービスが応答しているか(外形監視)
- リソース:CPU・メモリ・ディスクに余裕があるか
- ログ:エラーや異常なアクセスが出ていないか
外形監視 ― 一番効くのは「外から叩く」
最も費用対効果が高いのが外形監視だ.外部から定期的にURLを叩き,応答が無ければ通知する.Uptime Kumaのような軽量ツールで十分始められる.
別のVPSや無料の監視サービスに置くのがコツだ.監視対象と同じ場所に監視を置くと,一緒に落ちて意味が無い.
リソース監視 ― 枯渇を「予兆」で検知する
ディスク満杯はサービス停止の典型原因だ.まずはcron+通知で,閾値を超えたらアラートする簡易監視から始める.
ディスク使用率が85%超でログ(簡易例)
#!/bin/bash
USE=$(df / | awk 'NR==2{print $5}' | tr -d '%')
if [ "$USE" -gt 85 ]; then
echo "disk ${USE}% on $(hostname)" | logger -t diskcheck
fiログ監視 ― 異常を見える場所に集める
journalctlやアプリログを定期的に眺める習慣,もしくはエラー集約の仕組みを持つ.「エラーが出ているのに誰も見ていない」状態を作らない.
本格化するなら,メトリクスとログを集約するダッシュボードを別途立てると,状況把握が一気に楽になる.
アラート設計 ― 鳴らしすぎると無視される
アラートは「本当に対応が要るものだけ」鳴らす.鳴りすぎると人は無視し,本物の障害を見逃す(アラート疲れ).
通知先はDiscord/Slack/メールなど,必ず気づける経路に1本化する.深夜でも届くかをテストしておく.
補論:監視は「安定したVPS」があってこそ活きる
監視を入れても,基盤が不安定なら通知ばかりが鳴る.まずは安定して動くVPSが土台になる.
高速NVMe・50種類以上のOSテンプレートに対応した国内VPS─シン・VPS─ はNVMe SSD+安定稼働で,監視ノイズが少ない運用を作りやすい.監視用に小さなVPSをもう1台立て,本番を外から見張る構成も低コストで組める.
監視ダッシュボードを公開するなら,取り扱い400種類以上のドメイン取得サービス─ムームードメイン─ のドメイン+HTTPS+認証で保護するのが基本だ.
よくある質問
Q1:個人開発でどこまで監視すべき?
最低限外形監視(死活)1本から.これだけで「落ちたのに気づかない」をほぼ防げる.余裕が出たらリソース・ログへ広げる.
Q2:監視ツールは何を使えばいい?
軽量ならUptime Kumaが定番で導入も簡単だ.メトリクスまで見たくなったら定番のダッシュボード系を別VPSに立てる.
Q3:通知先はどこがいい?
普段から見ているチャット(Discord/Slack)が最も確実だ.メールは埋もれやすいので,緊急アラートはチャットに寄せると良い.
まとめ ― 「気づける」だけで運用は別物になる
監視の本質は「異常に,早く,気づく」こと.死活・リソース・ログの3層を,鳴らしすぎないアラートで束ねる.
まずは外形監視を1本入れよう.落ちたら通知が来る状態を作るだけで,あなたの運用は「祈り」から「仕組み」へ変わる.