CloudWatch Logs からログデータを取得するにはどうすればよいですか?

所要時間1分
0

アマゾン ウェブ サービス (AWS) アカウントのログデータを探したいと考えています。Amazon CloudWatch Logs からログデータを取得するためのベストプラクティスは何ですか?

簡単な説明

CloudWatch Logs からログデータを取得するためのベストプラクティスには、4 つの方法があります。ユースケースに応じて、次の 4 つのいずれかを使用できます。

  • サブスクリプションフィルターを使用して、ログデータを別の受信ソースにリアルタイムでストリーミングする
  • CloudWatch Logs Insights でクエリを実行する方法
  • バッチユースケース用に Amazon Simple Storage Service (Amazon S3) にログデータをエクスポートする
  • CloudWatch API で GetLogEvents または FilterLogEvents を呼び出す

解決方法

サブスクリプションフィルターを使用する

CloudWatch Logs からリアルタイムでログデータをすぐに取得するには、サブスクリプションフィルターを使用できます。詳細については、「サブスクリプションによるログデータのリアルタイム処理 」と「CloudWatch Logs のサブスクリプションフィルターの使用 」を参照してください。

ログイベントのフィルタリングは内部的に実行されるため、CloudWatch API のスロットリングを防止します。Amazon Kinesis Data Streams は、スロットルされたサービス API 呼び出しを自動的に再試行します。

CloudWatch Logs Insights でクエリを実行する

ログデータをすばやく検索して分析するには、CloudWatch Logs Insights でクエリを実行します

ログデータを Amazon S3 へエクスポートする (バッチユースケース)

バッチユースケースで CloudWatch Logs から Amazon S3 にログデータを移動する方法については、「Amazon S3 へのログデータのエクスポート」を参照してください。ログデータを CloudWatch Logs からエクスポートできるようになるまで、最大 12 時間かかります。リアルタイム分析と処理には、サブスクリプションフィルターを使用します。

重要: AWS アカウントには、[PENDING]、[PENDING_CANCEL]、または [RUNNING] の状態のログデータのエクスポートタスクを 1 つだけ持つことができます。

GetLogEvents または FilterLogEvents を呼び出す

ログデータを手動で検索するには、CloudWatch API で GetLogEvents または FilterLogEvents を使用します。

重要 : このメソッドは、GetLogEvents および FilterLogEvents の 1 秒あたりのトランザクション数 (TPS) クォータのため、スケーラブルではありません。現在のクォータについては、「CloudWatch Logs クォータ」を参照してください。これらのアクションの実行時にスロットリングが発生する場合は、代わりにサブスクリプションフィルターを使用してください。


関連情報

Amazon CloudWatch Logs とは何ですか?

AWS公式
AWS公式更新しました 2年前