今日の複雑かつ変化の激しいIT環境では、信頼性と効率性が高いシステムを維持することが重要です。オブザーバビリティは、システムのテレメトリーデータの収集、処理、分析を通じてシステムの内部状態に関するインサイトを提供することで、これを実現する上で重要な役割を果たします。

オブザーバビリティの成熟度とは、組織がシステムのパフォーマンスと信頼性を理解し、改善する能力を指します。オブザーバビリティの成熟度には、基本、中級、上級の3つのレベルがあります。このブログ記事では、これらのレベルについて説明し、各レベルでNew Relicを活用する方法など、成熟度と導入の各レベルを説明する例を提供します。

レベル1:基本的なオブザーバビリティ(初級)

基本的な監視レベルでは、オブザーバビリティは重要なメトリクスとシンプルなアラートメカニズムに重点を置いています。この段階の特徴は、CPU使用率、メモリ消費量、ディスク入出力(I/O)などの基本的なデータポイントの収集です。主な目標は、インフラストラクチャが稼働していることを確認し、ダウンタイム リソースサチュレーション(飽和度) および 可用性などの明らかな問題を検出することです。基本的な監視では、システムのビューが限定されており、多くの場合、アプリケーション固有のメトリクスやユーザー体験に関するインサイトは得られません。

基本的な監視の主な特徴と制限事項は次のとおりです。

  • サーバー稼働時間の監視:サーバーが稼働していて利用可能かどうかを追跡します。
  • リソース使用状況の監視:CPU、メモリ、ディスクの使用状況を監視して、リソースの制約を特定します。
  • 基本アラート: CPU 使用率が高い、メモリが少ないなどの重要な閾値を超えたときに運用チームに通知するシンプルなアラートを設定します。
  • 受動的アプローチ:トラブルシューティングと問題解決は主に受動型であり、事前定義された閾値によってトリガーされるアラートに依存します。問題が発生すると、チームは慌ててデータを収集し、問題を診断することがよくあります。
  • サイロ化されたツール:監視ツールは多くの場合、ばらばらになっており、特定のコンポーネントまたはチームに固有のものです。異なる監視ソリューション間のインテグレーションはほとんどまたはまったくありません。

例:シンプルなeコマースストア

単一のサーバー上で実行される基本的なeコマースストアを検討します。このレベルでは、店舗の監視システムは以下を追跡します。

  • サーバー稼働時間:サーバーが稼働していることを確認する
  • CPU使用率:サーバーの過負荷を示す可能性のある高いCPU使用率を監視する
  • メモリ使用量:メモリリークまたはメモリ不足がないか確認する
  • ディスクI/O:ディスクが過剰に使用されていないことを確認する

サーバーがダウンすると、アラートがトリガーされ、チームに調査するよう通知されます。ただし、問題の根本原因がすぐには明らかにならない場合があり、手動による介入と診断が必要になります。

New Relicによるソリューション

基本レベルでは、New Relicは組織が基礎的なオブザーバビリティの実践を確立するのを支援できます。

  1. インフラストラクチャ監視:New Relicインフラストラクチャモニタリングは、CPU、メモリ、ディスク I/O、およびサーバーの稼働時間に関するインサイトを提供し、サーバーの基本的な側面が監視され、リソース使用率の一元的なビューが提供されるため、データのサイロ化が解消されます。
  2. アラートと通知:New Relicで基本的なアラートを設定し、CPU使用率の高さやディスク容量の低下など、主要なメトリクスが事前定義された閾値を超えたときにチームに通知します。
  3. ダッシュボード:事前構築済みのダッシュボードとカスタムダッシュボードは重要なメトリクスを視覚化し、システムの健全性をリアルタイムで一目で確認できるようにします。

New Relic インフラストラクチャモニタリングアラートカスタムダッシュボードの機能を活用することで、基本レベルの組織はシステムの健全性に関する可視性を向上させ、問題の特定と解決のプロセスを一元化できます。

 

基本的なアラートによるインフラストラクチャモニタリング

レベル2:拡張されたオブザーバビリティ(中級)

拡張されたオブザーバビリティは、より洗練されたメトリクス、ログ、トレースを組み込むことで、基本的な監視を拡張します。このレベルでは、アプリケーションパフォーマンスとユーザー体験の可視性が向上します。これには、カスタムダッシュボードの設定、アラートのきめ細かな調整、分散トレーシング実装の開始が含まれます。インフラストラクチャの健全性から、アプリケーションパフォーマンスとユーザーインタラクションに焦点を当てていきます。この段階では、チームは問題をより効果的に診断し、アプリケーションの動作をより詳細に理解することができます。

拡張されたオブザーバビリティの主な機能は次のとおりです。

  • 包括的なメトリクス:各アプリケーションとサービスのレスポンスタイム、リクエスト率、エラー率、ユーザーインタラクション、スループットなどの主要なパフォーマンスメトリクスを追跡します。

  • ログの集約と分析:さまざまなコンポーネントからログを収集して一元化し、システムの状態を包括的に把握します。

  • 分散トレーシング:さまざまなサービスやコンポーネントを通過するユーザーのリクエストを追跡するトレースを実装するため、ボトルネックや障害ポイントを特定するのに役立ちます。

  • きめ細かく調整されたアラート:特定のアプリケーションメトリクスとユーザーインタラクションに基づいて、より詳細でターゲットを絞ったアラートを作成し、より正確で実用的な通知を可能にします。

同じeコマースウェブサイトを考えてみましょう。現在、同社は集中ログソリューションを実装し、アプリケーションパフォーマンス監視(APM)を使用して、リクエストのレイテンシ、エラー率、ユーザーインタラクションなどの詳細なアプリケーションメトリクスを収集しています。ユーザーからチェックアウトプロセスが遅いという報告があった場合、チームは分散トレーシングを使用して、さまざまなマイクロサービスを通じてユーザーのリクエストを追跡し、注文処理サービスのボトルネックを特定できます。

拡張されたオブザーバビリティにより、eコマースストアは、データベースクエリの速度低下、決済サービスのエラー率の増加、ユーザー認証のレイテンシなどの問題を検出できます。アラートをより的確にターゲット設定でき、ダッシュボードではアプリケーションの健全性に関するリアルタイムのインサイトが提供されます。

速度低下が発生すると、トレースにより、決済ゲートウェイへのAPIコールに予想よりも時間がかかっていることがわかります。チームは、この問題がサードパーティAPIのネットワークレイテンシの問題であるとすぐに特定しました。詳細なメトリクスとログがあれば、問題を特定の時間や条件と関連付けることができるため、具体的なデータを使用してAPIプロバイダーに連絡し、恒久的な修正が開発されるまでの間、一時的な解決策に取り組むことができます。

New Relicによるソリューション

中級レベルでは、New Relicはより統合された包括的な機能を通じてオブザーバビリティを強化できます。

  1. APM:New Relic APMを使用して、リクエスト率、エラー率、レスポンスタイムなどの詳細なアプリケーションパフォーマンスメトリクスを監視します。これは、パフォーマンスのボトルネックを特定して診断する際に役立ちます。
  2. 分散トレーシング:New Relic分散トレーシングを実装してマイクロサービス全体のリクエストを追跡し、トランザクションに関与する各コンポーネントのパフォーマンスを可視化します。
  3. 高度なアラート:メトリクス、ログ、トレースの組み合わせを活用して、より正確で実用的なアラートを提供するアラートポリシーを設定します。

New Relic APM、分散トレーシング、AI Opsの機能を活用することで、オブザーバビリティ取り組みの中級レベルにある組織は、アプリケーションに関するより深いインサイトを得て、問題の診断能力を向上させ、パフォーマンスの問題に効果的に対応できるようになります。

分散トレーシングでは、サービスマップによるサービスの健全性とともに視覚化

レベル3:高度なオブザーバビリティ(上級)

高度なオブザーバビリティとは最高レベルの成熟度を表しており、開発およびリリースのライフサイクルにオブザーバビリティが深く統合されています。この段階には、予測分析、自動化された根本原因分析、プロアクティブな問題解決が含まれます。機械学習とAI機能を活用して、潜在的な障害を予測し、パフォーマンスを最適化できます。問題が発生する前に予測し、解決プロセスを自動化してダウンタイムを最小限に抑え、ユーザー体験を向上させることに重点を置いています。

高度なオブザーバビリティの主な機能は次のとおりです。

  • フルスタックの可視性:ユーザーの行動や外部依存関係を含め、インフラストラクチャからアプリケーションまで、テクノロジースタック全体にわたるエンドツーエンドの可視性。
  • 予測分析:機械学習を活用してトラフィックパターン、潜在的な障害、パフォーマンスの低下を予測し、チームが先制措置を取れるようにします。AIを活用して問題の根本原因を分析および特定することで、平均解決時間(MTTR)を大幅に削減します。

  • 包括的な監視とインサイト:複数のソースからのデータを組み合わせて、システムのパフォーマンスと健全性の総合的なビューを提供し、継続的な改善と最適化を可能にします。

  • インテグレーションとコラボレーション:オブザーバビリティツールと他のIT運用ツールをシームレスにインテグレーションし、開発、運用、ビジネスチーム間のコラボレーションを促進します。

上級段階では、eコマースのWebサイトは、フルスタックの可視性を提供するオールインワンのオブザーバビリティプラットフォームを採用しています。このプラットフォームは、インフラストラクチャ、アプリケーション、ユーザーの行動、サードパーティのサービスなど、テクノロジースタックのあらゆる側面と統合されています。このプラットフォームは機械学習を使用してテレメトリーデータを分析し、異常なトラフィックパターンやパフォーマンスの低下などの異常を検出します。

たとえば、オブザーバビリティプラットフォームでは、ユーザーが通常よりも高い割合でカートを放棄していることを示すユーザー行動の異常を検出します。調査の結果、最近のデプロイメントでバグが発生し、チェックアウトプロセス中に速度低下が発生していることが判明しました。プラットフォームのAI機能は、この動作と決済サービスのレスポンスタイムの増加を関連付けます。

問題が収益に大きな影響を与える前に、オブザーバビリティプラットフォームはアラートをトリガーし、デプロイメント追跡の変更に基づいて修復アクションを推奨できます。また、根本原因、スタックトレース、影響を受けたエンティティに関するコンテキスト内のインサイトを強調した詳細なレポートを開発チームに送信します。このプロアクティブなアプローチにより、シームレスなユーザー体験が保証され、ビジネス運用に与える問題の影響が最小限に抑えられます。

New Relicによるソリューション

上級レベルでは、New Relicはフルスタックオブザーバビリティを実現するための最先端の機能を提供します。

  1. フルスタックオブザーバビリティ:New Relicのフルスタックオブザーバビリティを活用して、Logs in Context、サービスマップ、ワークロード、Errors Inboxなどのプラットフォーム機能を使用して、インフラストラクチャ、アプリケーション、ユーザーの行動、サードパーティのサービス全体にわたるエンドツーエンドの可視性を取得します。これにより、テレメトリーデータを包括的に監視し相関づけることができます。
  2. AIを活用したインサイト:強力なインサイトを得るために、生成AIオブザーバビリティアシスタントであるNew Relic AIを活用して、異常を検出し、潜在的な問題を解析し、実用的な推奨事項を提供します。これにより、システムの健全性を積極的に管理してMTTRを短縮できます。
  3. プロアクティブな検出と自動修復:Webhook、Amazon EventBridge、APIゲートウェイなどの高度なインテグレーションによる自己修復メカニズムを使用して問題をプロアクティブに解決し、障害が発生したサービスを自動的に再起動したり、トラフィックを再ルーティングしたりします。これにより、ダウンタイムが短縮され、一貫したシステムパフォーマンスが確保されます。

APM 360はシステムのフルスタック概要を提供

まとめ

さまざまな成熟度レベルでのオブザーバビリティを理解し、実装することは、堅牢で高性能なアプリケーションを維持する上で不可欠です。基本的な監視から上級オブザーバビリティまで、各段階は前の段階を基盤として構築され、システムの信頼性とパフォーマンスを確保するためのますます洗練された手法を提供します。

New Relicのフルスタックオブザーバビリティ、AIを活用したインサイト、高度なインテグレーションを採用することで、組織は信頼性の向上、パフォーマンスの改善、プロアクティブな修復を実現できます。これにより、高いシステムパフォーマンス、チーム間のコラボレーションの向上、エンドユーザーにとって最適なデジタルエクスペリエンスが保証されます。