Baromio Team · · AI-generated, reviewed by the Baromio Team

SaaSモニタリング戦略:インフラよりも収益を優先する

多くのSaaSチームはCPUやメモリを監視していますが、本当に追跡すべきなのは、収益を生み出し顧客を繋ぎ止めるエンドポイントです。

サーバーのCPU使用率が15%で安定していても、チェックアウトフローが正常に動作しているか、OAuthコールバックがタイムアウトしていないか、ダッシュボードの動作が遅くて静かにチャーンを引き起こしていないか、といったことはほとんどわかりません。インフラの健全性とユーザー体験の健全性は同じ指標ではなく、この二つを混同することはSaaSチームが犯す最もコストの高い過ちの一つです。


Illustration

収益を蝕むモニタリングの盲点

従来のインフラ監視は必要ですが、それだけでは十分ではありません。多くのチームはサーバー、データベース、ネットワークスループットを計測して「完了」とみなします。しかし問題は、SaaSの監視はインフラの生メトリクスよりもユーザージャーニーと重要なビジネスワークフローを優先すべきだという点です。サーバーが健全でも、/api/checkoutエンドポイントが503を返し続けていれば意味がありません。

典型的なB2B SaaSプロダクトで実際に収益を生み出しているものを考えてみましょう。サインアップとオンボーディングフロー、決済処理、ユーザーがセッションごとに呼び出すコアAPIエンドポイント、認証とセッション更新、そしてインテグレーション用のWebhook配信です。これらはいずれも、CPUやメモリのグラフには明確に現れません。決済プロセッサのレスポンスが400msから8秒に急増しても、インフラアラートは一切発火しないことがあります。サーバーは正常のまま。でも、コンバージョン率は崩壊します。

SaaSビジネスにおけるモニタリングの課題には、まさにこのギャップが含まれています。つまり、opsチームが計測しているものとプロダクトチームが重視しているものの乖離です。このギャップを埋めるには、リソース消費ではなくユーザージャーニーを軸に、意図的にモニタリングを設計する必要があります。


Illustration

サイレントキラー:データベース接続プールの枯渇

サーバーレベルのアラートが一切発火しないまま本番SaaSアプリをダウンさせる盲点の具体例として、データベース接続プールの枯渇を見てみましょう。

何が起きるかというと、アプリケーションはリクエストごとに新しい接続を作るオーバーヘッドを避けるため、事前に確立されたデータベース接続のプールを維持します。通常の負荷では問題ありません。しかしトラフィックが急増したとき、あるいは遅いクエリが予想より長く接続を保持したとき、プールは飽和します。新しいリクエストはキューに積まれ、レスポンスタイムが上昇し、やがてリクエストはタイムアウトします。

サーバーのCPU?問題なし。データベースサーバー?正常。ユーザー?スピナーを見つめるか、500エラーを受け取るか。

多くのチームはサーバーレベルのデータベース接続しか監視しておらず、アプリケーションレベルのプールメトリクスを見落としています。そのため、ユーザーが影響を受けるまでこの障害モードに完全に気づかないのです。実際に計測すべきメトリクスは次のとおりです。

  • アクティブ接続数とプール最大値の比較
  • 待機キューの深さ(接続待ちのリクエスト数)
  • 接続取得時間(平均ではなくp95/p99)
  • 接続タイムアウト率

プールサイズが20で、アクティブ接続数が常に18〜19に達しているなら、トラフィックが一度急増するだけでアウトレージになります。これは対処できるシグナルですが、収集していなければ気づけません。


Illustration

2025年のページスピード:Core Web Vitalsがスタンダード

ユーザー向けSaaSプロダクトにおいて、パフォーマンス監視は進化しています。業界はCore Web Vitalsを実ユーザーのページ体験を測る権威あるフレームワークとして広く採用しており、2025年には単純な読み込み速度を超え、応答性と視覚的安定性へと焦点が移っています。

重要な3つのメトリクス:

LCP(Largest Contentful Paint)

最も大きな表示要素が読み込まれるまでの時間。目標:2.5秒以内。これが主要な読み込み速度の指標です。

INP(Interaction to Next Paint)

応答性の指標として、First Input Delayに取って代わりました。セッション中の最初のインタラクションだけでなく、すべてのユーザーインタラクションのレイテンシを計測します。目標:200ms以内。重いReactの再レンダリングや処理の重いイベントハンドラはここに現れます。

CLS(Cumulative Layout Shift)

視覚的安定性、つまり読み込み中に要素がどれだけ動くかを測定します。目標:0.1以内。明示的なサイズ指定のない遅延読み込み画像、動的に挿入されるバナー、Webフォントの切り替えといった問題がここで検出されます。

もし主要なパフォーマンスKPIとして未だにTime to First ByteやFirst Contentful Paintを報告しているなら、検索エンジンもユーザーも既に乗り越えた指標に最適化していることになります。


PulseGuardがこの戦略にどう貢献するか

本格的なオブザーバビリティスタックを構築せずにクリティカルパスの監視を実装したい小規模チームには、PulseGuardが最適です。フリーランサー、エージェンシー、スモールチーム向けに設計されたAI対応の監視ツールで、30秒間隔の死活監視、SSL/DNS/セキュリティ監視、ステータスページ、そしてChatGPT/Claudeスタイルのワークフロー向けMCPアクセスを提供しています。大掛かりな設定なしに、重要なユーザージャーニー全体でエンドポイントレベルの監視を実現できます。

30秒のチェック間隔は、収益に直結するエンドポイントにとって特に重要です。5分間隔のポーリングでは、アラートが発火する前にチェックアウト障害が4分以上検出されないままになる可能性があります。


実践的なまとめ

収益に直結するパスに対して、現在のアラートカバレッジを監査する。 有料ユーザーがサインアップ、ログイン、コア機能の利用中に触れるすべてのエンドポイントをリストアップしてください。そのうちHTTPレベルで積極的に監視されているものはいくつあるでしょうか?多くのチームはすぐにギャップを見つけるはずです。

アプリケーション層からプールメトリクスを公開・計測する。 データベースサーバーのダッシュボードに頼らないでください。接続プールクライアント(PgBouncer、HikariCP、pg-poolなど)はメトリクスを直接出力できます。それをモニタリングパイプラインに取り込みましょう。

Core Web Vitalsの予算をサイト全体ではなく、ルートごとに設定する。 マーケティングのホームページとアプリのダッシュボードでは、パフォーマンスプロファイルがまったく異なります。集計スコアは、重要なフローにおけるパフォーマンス低下を隠してしまいます。

SLOはアップタイムの割合だけでなく、ビジネスワークフローを基準に定義する。 「99.9%のアップタイム」は、どのエンドポイントに適用されるか、どのレイテンシ閾値が「劣化」と見なされるかを明確にしなければほぼ無意味です。SaaSにおける適切に定義されたアップタイム戦略は、pingのレスポンスだけでなく、特定のユーザー向け操作に可用性目標を紐づけます

まずチェックアウトと認証のエンドポイントから始めましょう。それ以外は後回しで構いません。


参考資料

  1. SaaS Monitoring: Metrics, Tools, And Best Practices Explained | UptimeRobot Knowledge Hub
  2. Monitoring SaaS Apps: Challenges & Best Practices
  3. Odown Blog | SaaS Application Monitoring Best Practices: A Complete Guide
  4. What Is System Uptime in Saas? How to Improve It
  5. 5 Best Uptime Monitoring Tools in 2026
  6. Database Connection Pooling Explained
  7. Mastering Database Connection Pooling - by Oskar Dudycz
  8. Enhancing Your Database Connection Pooling for ...