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

最終更新日: 2019 年 5 月 8 日

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

簡単な説明

CloudWatch Logs からログデータを取得するには、推奨される方法が 4 つあります。

  • サブスクリプションフィルターを使用して、ログデータを別の受信ソースにリアルタイムでストリーミングする方法
  • CloudWatch Logs Insights でクエリを実行する方法
  • バッチユースケース用に Amazon シンプルストレージサービス (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 クォータ」を参照してください。これらのアクションの実行時にスロットリングが発生する場合は、代わりにサブスクリプションフィルターを使用してください。


この記事はお役に立ちましたか?


請求に関するサポートまたは技術サポートが必要ですか?