Amazon SQS のログ記録とモニタリング
Amazon Simple Queue Service は、ユーザー、ロール、または AWS のサービス のによって実行されたアクションのレコードを提供するサービスである AWS CloudTrail と統合されています。CloudTrail は Amazon SQS へのすべての API コールをイベントとしてキャプチャします。キャプチャされた呼び出しには、Amazon SQS コンソールからの呼び出しと、Amazon SQS API オペレーションへのコード呼び出しが含まれます。CloudTrail で収集された情報を使用して、Amazon SQS に対するリクエスト、リクエスト元の IP アドレス、リクエストの作成日時、その他の詳細を確認できます。
各イベントまたはログエントリには、リクエストの生成者に関する情報が含まれます。アイデンティティ情報は、以下を判別するのに役立ちます。
-
ルートユーザーまたはユーザー認証情報のどちらを使用してリクエストが送信されたか。
-
リクエストが IAM Identity Center ユーザーに代わって行われたかどうか。
-
リクエストがロールまたはフェデレーションユーザーのテンポラリなセキュリティ認証情報を使用して行われたかどうか。
-
リクエストが、別の AWS のサービス によって送信されたかどうか。
アカウントを作成すると、AWS アカウント で CloudTrail がアクティブになり、自動的に CloudTrail の[イベント履歴] にアクセスできるようになります。CloudTrail の [イベント履歴] では、AWS リージョン で過去 90 日間に記録された 管理イベントの表示、検索、およびダウンロードが可能で、変更不可能な記録を確認できます。詳細については、「AWS CloudTrail ユーザーガイド」の「CloudTrail イベント履歴の使用」を参照してください。[イベント履歴] の閲覧には CloudTrail の料金はかかりません。
AWS アカウント で過去 90 日間のイベントを継続的に記録するには、証跡または CloudTrail Lake イベントデータストアを作成します。
- Amazon CloudWatch アラーム
-
指定した期間にわたって単一のメトリクスをモニタリングし、複数の期間にわたり定義したしきい値に関連するメトリクス値に基づいて 1 つ以上のアクションを実行します。例えば、Amazon SNS トピックに通知を送信するか、Amazon SQS キューにメッセージを送信するアクションをトリガーするように CloudWatch アラームを設定できます。CloudWatch のアラームは、メトリクスが特定の状態になっただけではアクションを実行しません。アクションを実行するには、状態が変化し、定義した期間維持される必要があります。
詳細については、「Amazon SQSメトリクスの CloudWatchアラームを作成する」および「Amazon CloudWatch を使用したデッドレターキューのアラームの作成」を参照してください。
- Amazon CloudWatch Logs
-
メッセージを処理するアプリケーションや Lambda 関数を設定してログを CloudWatch Logs に送信することで、Amazon SQS に関連するログファイルをモニタリング、保存、アクセスできるようにします。これらのログを使用して、メッセージ処理の分析、問題のデバッグ、Amazon SQS ワークフローのパフォーマンスのモニタリングを行うことができます。
詳細については、「AWS CloudTrail を使用した Amazon Simple Queue Service API コールのログ記録」を参照してください。
- Amazon CloudWatch Events
-
Amazon CloudWatch Events を使用して、AWS 環境内の変更や特定のイベントを検出し、Amazon SQS キューにルーティングします。これにより、イベントデータをキャプチャしたり、ワークフローをトリガーしたり、後で処理するためにイベントを保存することができます。
詳細については、このガイドの「Amazon EventBridgeを使用して Amazon SQS AWSサービスからの通知の自動化のサービス」および「Amazon EventBridge ユーザーガイド」の「EventBridge は、Amazon CloudWatch Events の進化形です」を参照してください。
- AWS CloudTrail ログ
-
CloudTrail は、ユーザー、ロール、または AWS のサービス によって Amazon SQS で実行されたアクションの詳細なレコードをキャプチャします。これらのログにより、
SendMessage、ReceiveMessage、DeleteQueueなどの API コールを追跡し、リクエストの実行者、発生日時、送信元の IP アドレスなどのキーの詳細を提供できます。詳細については、「AWS CloudTrail を使用した Amazon Simple Queue Service API コールのログ記録」を参照してください。
- AWS Trusted Advisor
-
Trusted Advisor は、AWS カスタマーへのサービス提供から開発されたベストプラクティスを使用して、Amazon SQS の使用を最適化します。Amazon SQS キューを確認し、セキュリティを強化し、メッセージ処理の信頼性を向上させ、コストを削減するための実用的な推奨事項を提供します。例えば、デッドレターキューの有効化や、キューのアクセスポリシーの改善を提案して、安全な運用を確保することがあります。
詳細については、サポート ユーザーガイドの AWS Trusted Advisor を参照してください。
- CloudTrail 証跡
-
証跡により、CloudTrail はログファイルを Amazon S3 バケットに配信できます。AWS マネジメントコンソール を使用して作成した証跡はマルチリージョンです。AWS CLI を使用する際は、単一リージョンまたは複数リージョンの証跡を作成できます。アカウント内のすべて AWS リージョン でアクティビティを把握するため、マルチリージョン証跡を作成することをお勧めします。単一リージョンの証跡を作成する場合、証跡の AWS リージョン に記録されたイベントのみを表示できます。証跡の詳細については、「AWS CloudTrail ユーザーガイド」の「AWS アカウント の証跡の作成」および「組織の証跡の作成」を参照してください。
証跡を作成すると、進行中の管理イベントのコピーを 1 つ無料で CloudTrail から Amazon S3 バケットに配信できますが、Amazon S3 ストレージには料金がかかります。CloudTrail の料金の詳細については、「AWS CloudTrail の料金
」を参照してください。Amazon S3 の料金に関する詳細については、「Amazon S3 の料金 」を参照してください。 - CloudTrail Lake イベントデータストア
-
[CloudTrail Lake] を使用すると、イベントに対して SQL ベースのクエリを実行できます。CloudTrail Lake は、行ベースの JSON 形式の既存のイベントを Apache ORC
形式に変換します。ORC は、データを高速に取得するために最適化された単票ストレージ形式です。イベントは、イベントデータストアに集約されます。イベントデータストアは、高度なイベントセレクタを適用することによって選択する条件に基づいた、イベントのイミュータブルなコレクションです。どのイベントが存続し、クエリに使用できるかは、イベントデータストアに適用するセレクタが制御します。CloudTrail Lake の詳細については、「AWS CloudTrail ユーザーガイド」の「AWS CloudTrail Lake の使用」を参照してください。 CloudTrail Lake のイベントデータストアとクエリにはコストがかかります。イベントデータストアを作成する際に、イベントデータストアに使用する料金オプションを選択します。料金オプションによって、イベントの取り込みと保存にかかる料金、および、そのイベントデータストアのデフォルトと最長の保持期間が決まります。CloudTrail の料金の詳細については、「AWS CloudTrail の料金
」を参照してください。