サブスクリプションを使用したログデータのリアルタイム処理 - Amazon CloudWatch ログ

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

サブスクリプションを使用したログデータのリアルタイム処理

サブスクリプションを使用して CloudWatch Logs からログイベントのリアルタイムフィードにアクセスし、カスタム処理、分析、他のシステムへのロードを行うために、Amazon Kinesis ストリーム、Amazon Data Firehose ストリーム、AWS Lambda などの他のサービスに配信することができます。ログイベントが宛先サービスに送信されると、base64 でエンコードされ、gzip 形式で圧縮されます。

ログイベントのサブスクリプションを開始するには、Kinesis データストリームなど、イベントを配信する受信リソースを作成します。サブスクリプションフィルターは、AWS リソースに配信されるログイベントのフィルタリングに使用するフィルターパターンと、一致するログイベントの送信先に関する情報を定義します。

サブスクリプションは、アカウントレベルとロググループレベルで作成できます。各アカウントには、1 つのアカウントレベルのサブスクリプションフィルターを含めることができます。ロググループごとに、最大 2 つのサブスクリプションフィルターを関連付けることができます。

注記

送信先のサービスが、スロットリングの例外や再試行可能なサービス例外 (HTTP 5xx など) の再試行可能なエラーを返した場合、CloudWatch Logs は最大 24 時間配信を再試行し続けます。AccessDeniedException や ResourceNotFoundException などの再試行不可能なエラーの場合、CloudWatch Logs は再配信を試みません。このような場合、サブスクリプションフィルターは最大 10 分間無効になり、CloudWatch Logs は送信先へのログの送信を再試行します。この無効化期間中、ログはスキップされます。

また、CloudWatch Logs は、サブスクリプションへのログイベントの転送に関する CloudWatch メトリクスを作成します。詳細については、「CloudWatch メトリクスによるモニタリング」を参照してください。

CloudWatch Logs サブスクリプションを使用して、Amazon OpenSearch Service クラスターにほぼリアルタイムでログデータをストリーミングすることもできます。詳細については、「Amazon OpenSearch Service への CloudWatch Logs データのストリーミング」を参照してください。

サブスクリプションは、標準ログクラスのロググループでのみサポートされます。ログクラスの詳細については、「ログクラス」を参照してください。

注記

サブスクリプションフィルターは、ログイベントをバッチ処理して送信を最適化し、送信先への呼び出しの量を減らすことができます。バッチ処理は必ず行われるわけではありませんが、可能な場合は使用されます。

概念

各サブスクリプションフィルタは以下のキー要素で構成されています。

フィルタパターン

CloudWatch Logs による各ログイベントのデータの解釈を記号によって記述したもので、送信先の AWS リソースに配信される内容を制限するフィルタリング式を含みます。フィルタパターンの構文の詳細については、「メトリクスフィルター、サブスクリプションフィルター、フィルターログイベント、およびライブテールのフィルターパターン構文」を参照してください。

destination arn

サブスクリプションフィードの送信先として使用する Kinesis Data Streams、Firehose ストリーム、または Lambda 関数の Amazon リソースネーム (ARN)。

role arn

選択された宛先にデータを置くのに必要な権限を CloudWatch Logs に付与する IAM ロール。CloudWatch Logs は Lambda 関数自体のアクセスコントロール設定から必要なアクセス権限を取得できるため、Lambda の送信先にはこのロールは必要ありません。

ディストリビューション

送信先にログデータを配信するのに使用する方法。この場合、宛先は Amazon Kinesis Data Streams です。デフォルトでは、ログデータは、ログストリームによってグループ化されています。さらに詳細に分散する場合でも、ログデータはランダムにグループ化することができます。

ロググループレベルのサブスクリプションには、次のキー要素も含まれます。

log group name

サブスクリプションフィルタを関連付けるロググループ。このロググループにアップロードされたすべてのログイベントにはサブスクリプションフィルターが適用され、フィルターに一致するログイベントは、一致するログイベントを受信する宛先サービスに配信されます。

アカウントレベルのサブスクリプションには、次のキー要素も含まれます。

選択基準

アカウントレベルのサブスクリプションフィルターが適用されているロググループを選択するために使用される基準。これを指定しない場合、アカウントレベルのサブスクリプションフィルターは、アカウントのすべてのロググループに適用されます。このフィールドは、無限のログループを防ぐために使用します。無限ログループの問題の詳細については、「ログの再帰防止」を参照してください。

選択基準のサイズ制限は 25 KB です。