翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
CloudWatch Logs Insights を使用してアプリケーションアクティビティをモニタリングする
Ram Kandaswamy、Amazon Web Services
概要
このパターンは、Amazon CloudWatch Logs Insights を使用して、アプリケーション例外を自動的に検出して警告するためのソリューションを提供します。自動ログ分析とアラートを実装することで、本番環境のアプリケーションの問題をすばやく特定して対応できます。
ログは、システム動作のモニタリング、問題の特定、最適なパフォーマンスの確保に重要な役割を果たします。移行プロセス中、ログファイルは、新しい環境でのシステムの機能の検証、互換性の問題の検出、予期しない動作の特定に非常に役立ちます。問題は、オペレーションまたはセキュリティに関連している可能性があります。セキュリティ関連の問題では、セキュリティと規制コンプライアンスを維持するために、不正アクセスの試みや疑わしいアクティビティを早期に検出できるようにすることが不可欠です。この機能は、機密データや重要なシステムを扱う際に特に重要です。
このパターンは、アプリケーションの高可用性を維持し、本番環境の問題に迅速に対応する必要があるチームにとって特に重要です。これは、さまざまな業界やユースケースに関連します。たとえば、通信では、ネットワークの設定ミスや停止をすばやく特定し、最適ではないルーティングパスを検出して、潜在的な輻輳を特定できます。モノのインターネット (IoT) ドメインでは、Greengrass コンポーネントが CloudWatch にログを発行できるため、この手法は関連するログの詳細を抽出し、包括的なダッシュボードに表示できます。
前提条件と制限
前提条件
アクティブにデプロイされた本稼働アプリケーション AWS アカウント
本番アプリケーションのログ記録形式と例外パターンの基本的な理解
Amazon CloudWatch Logs にストリーミングするように設定されたアプリケーションログ
制約事項
一部の AWS のサービス は、すべてで利用できるわけではありません AWS リージョン。リージョンの可用性については、AWS 「リージョン別のサービス
」を参照してください。特定のエンドポイントについては、「サービスエンドポイントとクォータ」を参照して、サービスのリンクを選択します。
アーキテクチャ
次の図は、CloudWatch Logs Insights がリソースログを評価し、関連するデータの視覚化を CloudWatch ダッシュボードに送信する方法を示しています。

この図表は、次のワークフローを示しています:
リソースは CloudWatch Logs にログを発行します。リソースには、Amazon Elastic Compute Cloud (Amazon EC2) インスタンスや Amazon Simple Storage Service (Amazon S3) バケットなどの AWS リソースを含めることができます。もう 1 つの例には、CloudWatch にログを発行できる CloudWatch Agent がインストールされているオンプレミスシステムが含まれます。
CloudWatch Logs Insights は、関連するパターン文字列をフィルタリングします。検索パターン文字列の例としては、「エラー」、「例外」、または特定の正規表現などがあります。
通常、本番サポートチームまたは開発者は CloudWatch ダッシュボードにパターン視覚化を追加します。
自動化とスケール
開発者は AWS Cloud Development Kit (AWS CDK)、、、または AWS SDKs を使用して複数の文字列パターンを処理することで AWS CloudFormation、このパターンのソリューションを自動化できます。チームは、この自動化を継続的インテグレーションとデプロイ (CI/CD) DevOps プロセスに組み込むことができます。
ツール
AWS のサービス
Amazon CloudWatch Logs を使用すると、すべてのシステム、アプリケーション、および からのログを一元化 AWS のサービス できるため、ログをモニタリングして安全にアーカイブできます。
AWS Identity and Access Management (IAM) は、誰を認証し、誰に使用する権限を付与するかを制御することで、 AWS リソースへのアクセスを安全に管理できます。
AWS Key Management Service (AWS KMS) は、データの保護に役立つ暗号化キーの作成と制御に役立ちます。
ベストプラクティス
関連するログデータを分析するためのロググループを定義および設定します。
フィールドエクスプローラーを使用して、ログデータで使用できる構造とフィールドを理解します。
サンプルクエリを特定の要件に合わせて調整し、分析を迅速化します。
クエリをモニタリングして、潜在的なパフォーマンスの問題やボトルネックを特定します。
過剰なコストやリソースの消費を避けるためにクエリ制限を設定します。
将来の使用のためにクエリを保存して時間を節約し、一貫した分析を確保します。
適切な IAM ポリシーを適用して、CloudWatch Logs Insights とロググループへのアクセスを制御します。 CloudWatch 最小特権の原則に従い、タスクの実行に必要な最小限のアクセス許可を付与します。詳細については、IAM ドキュメントの「最小特権の付与」と「セキュリティのベストプラクティス」を参照してください。
機密ログデータに を使用してログデータの暗号化 AWS KMSを有効にします。
エピック
タスク | 説明 | 必要なスキル |
---|---|---|
IAM 許可を設定します。 | IAM アクセス許可を設定するには、以下を実行します。
IAM ポリシーを作成する方法、または既存のポリシーにアクセス許可を追加する方法については、「IAM ユーザーガイド」の「カスタマー管理ポリシーを使用してカスタム IAM アクセス許可を定義する」および「IAM ポリシーを編集する」を参照してください。詳細については、Amazon CloudWatch Logs ユーザーガイド」の「Amazon CloudWatch Logs の Identity and Access Management」およびCloudWatch 「CloudWatch Logs のアクセス許可リファレンス」を参照してください。 Amazon CloudWatch | AWS 管理者、AWS DevOps、AWS システム管理者、クラウド管理者、クラウドアーキテクト、DevOps エンジニア |
ロググループを作成します。 | ロググループを作成するには、次のいずれかのオプションを使用します。
| AWS 管理者、AWS DevOps、AWS システム管理者、クラウド管理者、クラウドアーキテクト、DevOps エンジニア |
CloudWatch Logs Insights クエリを生成します。 | CloudWatch Logs Insights クエリを作成して保存するには:
| AWS 管理者、AWS DevOps、AWS システム管理者、クラウド管理者、クラウドアーキテクト、DevOps エンジニア |
CloudWatch ダッシュボードで視覚化を作成します。 | CloudWatch ダッシュボードを使用して視覚化を作成するには、次の手順を実行します。
ダッシュボードのオプションと機能の詳細については、Amazon CloudWatch Logs ユーザーガイド」の「Amazon CloudWatch ダッシュボードの使用」および「ダッシュボード変数を使用した柔軟な CloudWatch ダッシュボードの作成 CloudWatch」を参照してください。 Amazon CloudWatch | AWS 管理者、AWS DevOps、AWS システム管理者、クラウド管理者、クラウドアーキテクト、DevOps エンジニア |
トラブルシューティング
問題 | ソリューション |
---|---|
クエリ結果が表示されない、またはクエリが壊れているように見える | サンプルクエリから変更された作業クエリから始めます。クエリの一部 (フィルターやフィールドなど) に小さな増分変更を実行し、CloudWatch Logs クエリジェネレーター機能を活用します。 |
ログストリームを作成していないロググループ | IAM ポリシーで、CreateLogStream オペレーションと CreateLogGroup オペレーションのリソースにワイルドカード文字 |