アップタイム監視 vs APM(性能監視)の違いと使い分け
アップタイム監視とAPM(Application Performance Monitoring)の違いを解説。それぞれの役割、監視項目、導入タイミング、おすすめツールを比較。
TL;DR
アップタイム監視は「サイトが稼働しているか」を外部からチェックし、APM(性能監視)は「アプリ内部でどこが遅いか」を詳細分析します。スタートアップはアップタイム監視から開始し、ユーザー数が増えてからAPMを追加するのが一般的です。
アップタイム監視とAPMの違い
| 項目 | アップタイム監視 | APM(性能監視) |
|---|---|---|
| 目的 | サイト/APIが稼働しているか確認 | アプリ内部のパフォーマンス分析 |
| 監視方法 | 外部からHTTPリクエスト送信 | アプリ内にエージェントを埋め込み |
| 監視項目 | HTTP状態、レスポンスタイム、SSL | DB遅延、関数実行時間、メモリ使用率 |
| 検知できること | 完全ダウン、SSL期限切れ、遅延 | N+1クエリ、メモリリーク、遅い関数 |
| 導入難易度 | 簡単(URLを登録するだけ) | 中〜高(コード変更が必要) |
| コスト | 月$0〜$50 | 月$50〜$500 |
| 代表的ツール | UpGuardian、UptimeRobot、Pingdom | New Relic、Datadog、AppDynamics |
アップタイム監視とは?
アップタイム監視(Uptime Monitoring)は、外部から定期的にHTTPリクエストを送り、サイトが応答するかチェックする監視手法です。
監視できること
- HTTP/HTTPSの稼働状態: ステータスコード200が返るか
- レスポンスタイム: サーバーが応答するまでの時間
- SSL証明書の有効期限: 期限切れ前にアラート
- DNSの解決: ドメインが正しくIPアドレスに変換されるか
- 特定キーワードの存在: ページ内に期待するテキストがあるか
アップタイム監視が向いているケース
- スタートアップやMVPで「とにかくサイトが落ちてないか知りたい」
- 顧客向けWebサイトやランディングページ
- 外部APIエンドポイントの稼働確認
- 複数のサイトを一括管理したい
アップタイム監視の限界
アップタイム監視では、以下のことは分かりません:
- どのDBクエリが遅いか
- どの関数がメモリを大量消費しているか
- ユーザーごとのページ読み込み時間
- JavaScriptエラーの詳細
APM(Application Performance Monitoring)とは?
APMは、アプリケーション内部にエージェントを埋め込み、詳細なパフォーマンスデータを収集する監視手法です。
監視できること
- トランザクション追跡: 1つのリクエストがどの関数を通過し、どこで時間がかかったか
- データベースクエリの分析: 遅いSQL、N+1問題の検出
- エラーレート: どのエンドポイントでエラーが多発しているか
- メモリ・CPU使用率: リソース消費の推移
- 分散トレーシング: マイクロサービス間の呼び出しチェーン可視化
APMが向いているケース
- 月間10万PV以上のトラフィックがある
- 「サイトは稼働してるけど遅い」という問題を解決したい
- 複雑なマイクロサービス構成
- SaaSプロダクトで顧客ごとのパフォーマンスを分析したい
APMの限界
APMでは、以下のことは分かりません:
- 外部からアクセスできない状態(DNS障害、ファイアウォール設定ミス)
- SSL証明書の期限切れ
- 完全ダウン時(エージェントが動いていない)
アップタイム監視とAPMの使い分け
フェーズ1: MVP・スタートアップ初期(〜1万PV/月)
アップタイム監視のみで十分です。
- ツール: UpGuardian(無料〜$9/月)
- 監視対象: トップページ、API主要エンドポイント
- 目的: 「サイトが落ちてないか」を最低限確認
フェーズ2: 成長期(1万〜10万PV/月)
アップタイム監視 + 簡易APMを導入。
- アップタイム: UpGuardian($9〜$29/月)
- 簡易APM: Sentry(エラー追跡)、Vercel Analytics(フロントエンド性能)
- 目的: ダウン検知 + エラー発生箇所の特定
フェーズ3: スケール期(10万PV/月〜)
アップタイム監視 + 本格APMを導入。
- アップタイム: UpGuardian($29/月)
- 本格APM: New Relic、Datadog($50〜$500/月)
- 目的: 外部監視 + 内部パフォーマンス最適化
主要ツールの比較
アップタイム監視ツール
| ツール | 無料プラン | 有料最安 | 特徴 |
|---|---|---|---|
| UpGuardian | 5サイト | $9/月 | 日本語完全対応、SSL監視標準 |
| UptimeRobot | 50サイト | $7/月 | 無料枠が広い |
| Better Stack | 5モニター | $24/月 | ログ管理も統合 |
APMツール
| ツール | 無料プラン | 有料最安 | 特徴 |
|---|---|---|---|
| New Relic | 100GB/月 | $99/月 | 全機能揃う定番APM |
| Datadog | 14日間 | $15/月 | インフラ監視も強い |
| Sentry | 5,000イベント/月 | $26/月 | エラー追跡特化 |
両方を使うメリット
アップタイム監視とAPMは補完関係にあります。
例:サイトが遅い場合
- アップタイム監視: 「レスポンスタイムが通常200ms → 5秒に悪化」と検知
- APM: 「特定のDBクエリが4秒かかっている」と詳細分析
- 対応: 該当クエリにインデックスを追加して解決
例:完全ダウンの場合
- アップタイム監視: 「HTTPステータス500」を即座に検知、アラート送信
- APM: エージェントが動いていないため情報なし
- 対応: サーバーログを確認し、プロセスを再起動
UpGuardianとAPMの併用設定例
UpGuardianのWebhook機能を使って、APMツールと連携できます。
ステップ1: UpGuardianでWebhook通知を設定
ダッシュボードで「Webhook URL」にDatadogやNew RelicのエンドポイントURLを入力します。
ステップ2: ダウン時にAPMでインシデント自動作成
UpGuardianからのWebhookを受け取ると、APM側でインシデントチケットが自動作成されます。
ステップ3: APMで詳細分析
APMのダッシュボードでトランザクション詳細を確認し、原因を特定します。
よくある質問
Q: 小規模サイトでもAPMは必要ですか?
A: 月間1万PV未満ならアップタイム監視だけで十分です。APMは導入コスト(技術・費用)が高いため、トラフィックが増えてから導入しましょう。
Q: APMだけではダメですか?
A: APMは内部監視なので、DNS障害やSSL期限切れなど「外部からアクセスできない状態」を検知できません。両方を使うのがベストプラクティスです。
Q: 無料で両方使えるツールは?
A: アップタイム監視はUpGuardianの無料プラン(5サイト)、APMはSentryの無料プラン(5,000イベント/月)がおすすめです。
まとめ
アップタイム監視とAPMは、目的と監視レイヤーが異なります。スタートアップはまずアップタイム監視から始め、トラフィックが増えてパフォーマンス最適化が必要になったらAPMを追加するのが効率的です。UpGuardianで今すぐアップタイム監視を始めましょう。