Live:CloudOps Webinars & Hands-on Workshops ·Register ↗
メインコンテンツまでスキップ

Application Signals を使用した APM

進化し続ける最新のアプリケーション開発の世界において、最適なパフォーマンスを確保し、サービスレベル目標 (SLO) を達成することは、シームレスなユーザーエクスペリエンスを提供し、ビジネス継続性を維持するために不可欠です。Amazon CloudWatch Application Signals は、OpenTelemetry (OTel) 互換のアプリケーションパフォーマンスモニタリング (APM) 機能であり、AWS 上で実行されるアプリケーションの監視とトラブルシューティングの方法に革命をもたらします。

CloudWatch Application Signals は、メトリクス、トレース、ログ、リアルユーザーモニタリング、Synthetic モニタリングなど、複数のソースにわたるテレメトリデータをシームレスに関連付けることで、アプリケーションパフォーマンスモニタリングに対する総合的なアプローチを提供します。この統合されたアプローチにより、組織はアプリケーションのパフォーマンスに関する包括的なインサイトを取得し、問題の根本原因を特定し、潜在的な障害に積極的に対処できます。

CloudWatch Application Signals の主な利点の 1 つは、自動インストルメンテーションと追跡機能です。手動での作業やカスタムコードを必要とせず、Application Signals は、AWS 上で実行されている各アプリケーションのアプリケーションパフォーマンスに最も重要なメトリクス (ボリューム、可用性、レイテンシー、障害、エラー) を表示する、事前構築された標準化されたダッシュボードを提供します。この合理化されたアプローチにより、カスタムダッシュボードの必要性がなくなり、サービスオペレーターは定義された SLO に対してアプリケーションの健全性とパフォーマンスを迅速に評価できます。

APM 図 1: メトリクス、ログ、トレースを送信する Cloudwatch Application Signals

CloudWatch Application Signals は、組織に次の機能を提供します。

  1. 包括的なアプリケーションパフォーマンスモニタリング: Application Signals は、メトリクス、トレース、ログ、リアルユーザーモニタリング、および Synthetic モニタリングからのインサイトを組み合わせた、アプリケーションパフォーマンスの統合ビューを提供します。この総合的なアプローチにより、組織はパフォーマンスのボトルネックを特定し、根本原因を突き止め、最適なアプリケーションパフォーマンスを確保するための予防的な対策を講じることができます。

  2. 自動インストルメンテーションと追跡: 手動作業やカスタムコードを必要とせず、Application Signals は定義された SLO に対してアプリケーションパフォーマンスを自動的にインストルメント化し追跡します。この合理化されたアプローチにより、手動でのインストルメンテーションと設定に関連するオーバーヘッドが削減され、組織はアプリケーション開発と最適化に集中できるようになります。

  3. 標準化されたダッシュボードと可視化: Application Signals は、アプリケーションパフォーマンスに最も重要なメトリクス(ボリューム、可用性、レイテンシー、障害、エラーを含む)を表示する、事前構築された標準化されたダッシュボードを提供します。この標準化されたビューにより、サービスオペレーターはアプリケーションの健全性とパフォーマンスを迅速に評価でき、情報に基づいた意思決定と積極的な問題解決が促進されます。

  4. シームレスな相関とトラブルシューティング: Application Signals は複数のソースにわたるテレメトリデータを相関させることで、トラブルシューティングプロセスを簡素化します。サービスオペレーターは、相関するトレース、ログ、メトリクスにシームレスにドリルダウンして、パフォーマンスの問題や異常の根本原因を特定できるため、平均解決時間 (MTTR) を短縮し、アプリケーションの中断を最小限に抑えることができます。

  5. Container Insights との統合: コンテナ化された環境で実行されるアプリケーションの場合、CloudWatch Application Signals は Container Insights とシームレスに統合され、組織はメモリ不足やコンテナポッドの高い CPU 使用率など、アプリケーションのパフォーマンスに影響を与える可能性のあるインフラストラクチャ関連の問題を特定できます。

アプリケーションパフォーマンス監視に CloudWatch Application Signals を活用するには、組織は次の一般的な手順に従うことができます。

  1. Application Signals を有効化する: AWS Management Console、AWS Command Line Interface (CLI)、または AWS SDK をプログラムで使用して、AWS 上で実行されているアプリケーションの CloudWatch Application Signals を有効化します。

  2. サービスレベル目標 (SLO) の定義: ビジネス要件と顧客の期待に沿うように、目標可用性、最大レイテンシー、エラーしきい値など、アプリケーションに必要な SLO を確立して設定します。

  3. パフォーマンスの監視と分析: Application Signals が提供する事前構築された標準化されたダッシュボードを利用して、定義された SLO に対するアプリケーションのパフォーマンスを監視します。メトリクス、トレース、ログ、リアルユーザーモニタリング、および Synthetic モニタリングのデータを分析して、パフォーマンスの問題や異常を特定します。

  4. 問題のトラブルシューティングと解決: Application Signals のシームレスな相関機能を活用して、相関するトレース、ログ、メトリクスを詳しく調査し、パフォーマンスの問題や根本原因を迅速に特定して解決します。

  5. Container Insights との統合 (該当する場合): コンテナ化されたアプリケーションの場合、CloudWatch Application Signals を Container Insights と統合して、アプリケーションのパフォーマンスに影響を与える可能性のあるインフラストラクチャ関連の問題を特定します。

CloudWatch Application Signals は強力なアプリケーションパフォーマンスモニタリング機能を提供しますが、データ量とコスト管理などの潜在的な課題を考慮することが重要です。アプリケーションの複雑さと規模が増加するにつれて、生成されるテレメトリデータの量が大幅に増加し、パフォーマンスに影響を与え、追加コストが発生する可能性があります。効率的でコスト効果の高いモニタリングソリューションを確保するために、データサンプリング戦略、保持ポリシー、コスト最適化手法の実装が必要になる場合があります。

さらに、アプリケーションパフォーマンスデータの適切なアクセス制御とデータセキュリティを確保することが重要です。CloudWatch Application Signals は、きめ細かなアクセス制御のために AWS Identity and Access Management (IAM) を活用し、保管時および転送中のテレメトリデータにデータ暗号化が適用され、アプリケーションパフォーマンスデータの機密性と整合性を保護します。

結論として、CloudWatch Application Signals は、AWS 上で実行されるアプリケーションのパフォーマンス監視に革命をもたらします。自動インストルメンテーション、標準化されたダッシュボード、テレメトリデータのシームレスな関連付けを提供することで、Application Signals は組織がアプリケーションのパフォーマンスを積極的に監視し、SLO の遵守を確保し、パフォーマンスの問題を迅速にトラブルシューティングして解決できるようにします。統合機能と OpenTelemetry の互換性により、CloudWatch Application Signals は、クラウドにおけるアプリケーションパフォーマンス監視のための包括的で将来性のあるソリューションを提供します。