翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
CloudWatch Logs Insights を使用したログデータの分析
CloudWatch Logs Insights を使用すると、Amazon CloudWatch Logs のログデータをインタラクティブに検索し分析することができます。クエリを実行することで、運用上の問題に効率的かつ効果的に対応できます。問題が発生した場合は、CloudWatch Logs Insights を使用して、潜在的な原因を特定し、デプロイされた修正を検証することができます。
CloudWatch Logs Insights は、クエリに使用できる 3 つのクエリ言語をサポートしています。
-
いくつかのシンプルで強力なコマンドを備えた、専用の Logs Insights クエリ言語 (Logs Insights QL)。
-
OpenSearch Service Piped Processing Language (PPL)。OpenSearch PPL を使用すると、パイプ (|) で区切られた一連のコマンドを使用してログを分析できます。
OpenSearch PPL を使用すると、パイプ処理されたコマンドを使用してデータを取得、クエリ、分析できるため、複雑なクエリの理解と構成が容易になります。構文を使用すると、コマンドを連鎖してデータを変換して処理できます。PPL を使用すると、データをフィルタリングして集計し、豊富な数学、文字列、日付、条件付き、その他の関数のセットを分析に使用できます。
-
OpenSearch Service 構造化クエリ言語 (SQL)。OpenSearch SQL クエリを使用すると、宣言的な方法でログを分析できます。SELECT、FROM、WHERE、GROUP BY、HAVING などのコマンドや、SQL で使用できるその他のさまざまなコマンドや関数を使用できます。ロググループ間で JOINs を実行し、サブクエリを使用してログ間でデータを関連付け、JSON、数学、文字列、条件付き、その他の SQL 関数の豊富なセットを使用してログに対して強力な分析を実行できます。
SQL コマンドまたは PPL コマンドを使用する場合は、フィールドをバックティックで特殊文字 (非アルファベットおよび非数値) で囲んでクエリを正常に実行してください。たとえば、
@message
、、Operation.Export
をバックティックTest::Field
で囲みます。フィールドを単にアルファベット名でバックティックで囲む必要はありません。
重要
CloudWatch Logs Insights クエリのセキュリティを強化するには、2025 年 7 月 31 日以降、CloudWatch コンソールでクエリを実行できるようにするには、 logs:StartQuery
と の両方のlogs:GetQueryResults
アクセス許可でユーザーがサインオンする必要があります。この日以降、これらのアクセス許可の両方を持たないユーザーは、コンソールでクエリ結果を表示できず、代わりにコンソールでクエリ結果を表示しようとするとバナーメッセージが表示されます。
変更後、必要なコンソールエクスペリエンスのアクセス許可は、SDK および StartQuery API と GetQueryResults API を使用する AWS CLI ユーザーに現在必要なアクセス許可と一致します。 APIs
IAM ポリシーを作成する方法、または既存のポリシーにアクセス許可を追加する方法については、「IAM ユーザーガイド」の「カスタマー管理ポリシーを使用したカスタム IAM アクセス許可の定義」および「IAM ポリシーの編集」を参照してください。
CloudWatch Logs Insights には、クエリ言語で使用できる以下の機能があります。
-
Amazon Route 53、、Amazon VPC などのサービスからの AWS ログのログフィールド、およびログイベントを JSON として出力するアプリケーションまたはカスタムログの自動検出。 AWS Lambda AWS CloudTrail
-
フィールドインデックスを作成してコストを削減し、特に多数のロググループまたはログイベントのクエリで結果を高速化します。ログイベントで一般的なフィールドのフィールドインデックスを作成したら、クエリで で使用できます。クエリは、インデックス付きフィールドが含まれていないことがわかっているログイベントの処理をスキップし、より少ないデータを処理します。
注記
filterIndex
コマンドは Logs Insights QL でのみ使用できます。 -
ログイベントのパターンの検出と分析。パターンは、ログフィールド間で繰り返される共有テキスト構造です。クエリの結果を表示するときは、[パターン]タブを選択して、結果のサンプルに基づいて CloudWatch Logs が検出したパターンを表示できます。
-
クエリの保存、クエリ履歴の表示、保存されたクエリの再実行。そのため、必要なときに複雑なクエリを実行でき、実行するたびにクエリを再作成する必要はありません。
次の CloudWatch Logs Insights 機能は、Logs Insights QL を使用する場合にのみサポートされます。
-
低頻度アクセスログクラスのログのクエリ。
-
ロググループのログイベントと以前の期間のログイベントを比較する比較クエリ。
-
filterIndex コマンド。指定したフィールドインデックスを含むログイベントのみをクエリがスキャンするように強制します。
重要
CloudWatch Logs Insights は、ロググループの作成時刻より前のタイムスタンプを持つログイベントにはアクセスすることができません。
CloudWatch のクロスアカウントオブザーバビリティでモニタリングアカウントとして設定されたアカウントにサインインしている場合、このモニタリングアカウントにリンクされているソースアカウントのロググループで CloudWatch Logs Insights クエリを実行できます。異なるアカウントにある複数のロググループをクエリするクエリを実行できます。詳細については、「CloudWatch のクロスアカウントオブザーバビリティ」を参照してください。
Logs Insights QL を使用してクエリを作成する場合、自然言語を使用して CloudWatch Logs Insights クエリを作成することもできます。そのためには、どのようなデータを探しているのかを質問したり、具体的に説明したりしてみてください。AI 支援機能が働いて、プロンプトに基づいてクエリが生成され、クエリの仕組みを説明した文が 1 行ずつ表示されます。詳細については、「Use natural language to generate and update CloudWatch Logs Insights queries」を参照してください。
サポートされているクエリ言語のいずれかを使用したクエリは、完了していない場合、60 分後にタイムアウトします。クエリ結果は 7 日間使用できます。
CloudWatch Logs Insights クエリには、クエリ言語に関係なく、クエリされるデータの量に基づいて料金が発生します。詳細については、「Amazon CloudWatch 料金表
CloudWatch Logs Insights を使用して、2018 年 11 月 5 日以降に CloudWatch Logs に送信されたログデータを検索できます。
重要
ネットワークセキュリティチームがウェブソケットの使用を許可しない場合は、現在 CloudWatch コンソールの CloudWatch Logs Insights 部分にアクセスすることはできません。API を使用して CloudWatch Logs Insights のクエリ機能を使用できます。詳細については、Amazon CloudWatch Logs API リファレンスの「StartQuery」を参照してください。