AWS CloudTrail を使用した OpenSearch Serverless API 呼び出しのログ記録 - Amazon OpenSearch Service

AWS CloudTrail を使用した OpenSearch Serverless API 呼び出しのログ記録

Amazon OpenSearch Serverless は、AWS CloudTrail (ユーザー、ロール、または Serverless 内で AWS のサービスが実行したアクションを記録するためのサービス) と統合されています。

CloudTrail は、OpenSearch Serverless のすべての API 呼び出しをイベントとしてキャプチャします。キャプチャされる対象としては、OpenSearch Service コンソールの Service セクションからの呼び出しや、OpenSearch Serverless API オペレーションへのコード呼び出しなどが含まれます。

証跡を作成する場合は、OpenSearch Serverless のイベントなど、Amazon S3 バケットに対する CloudTrail イベントの継続的な配信を有効にすることができます。証跡を設定しない場合でも、CloudTrail コンソールの [イベント履歴] で最新のイベントを表示できます。

CloudTrail で収集された情報を使用して、OpenSearch Serverless に対し発行されたリクエスト、リクエスト元の IP アドレス、リクエスト作成者、リクエスト作成日時、その他の詳細情報などを確認できます。

CloudTrail の詳細については、「AWS CloudTrail ユーザーガイド」を参照してください。

CloudTrail での OpenSearch Serverless の情報

CloudTrail は、AWS アカウントを作成すると、その中で有効になります。OpenSearch Serverless でアクティビティが発生すると、そのアクティビティは、[Event history] (イベント履歴) 内にある別の AWS のサービスイベントとともに、CloudTrail イベントに記録されます。最近のイベントは、AWS アカウント で表示、検索、ダウンロードできます。詳細については、 CloudTrail イベント履歴でのイベントの表示を参照してください。

OpenSearch Serverless のイベントなど、AWS アカウント のイベントの継続的な記録を行うには、証跡を作成します。証跡により、CloudTrail はログファイルを Amazon S3 バケットに配信できます。デフォルトでは、コンソールで証跡を作成するときに、証跡がすべての AWS リージョン に適用されます。

証跡は、AWS パーティションのすべてのリージョンからのイベントをログに記録し、指定した Amazon S3 バケットにログファイルを配信します。さらに、CloudTrail ログで収集したイベントデータをより詳細に分析し、それに基づいて対応するため、他の AWS サービスを構成できます。詳細については、次を参照してください:

すべての OpenSearch Serverless アクションは CloudTrail によってログ記録されます。これらは、「OpenSearch Service API reference」(OpenSearch Service API リファレンス) に記載されています。例えば、CreateCollectionListCollectionsDeleteCollection の各アクションを呼び出すと、CloudTrail ログファイルにエントリが生成されます。

各イベントまたはログエントリには、リクエストの生成者に関する情報が含まれます。この ID 情報は以下のことを確認するのに役立ちます。

  • リクエストが、ルート認証情報と AWS Identity and Access Management (IAM) ユーザー認証情報のどちらを使用して送信されたか。

  • リクエストがロールまたはフェデレーションユーザーのテンポラリなセキュリティ認証情報を使用して行われたかどうか。

  • リクエストが別の AWS サービスによって行われたかどうか。

詳細については、「CloudTrail userIdentity エレメント」を参照してください。

CloudTrail での OpenSearch Serverless データイベント

データイベントでは、リソース上またはリソース内で実行されるリソースオペレーション (OpenSearch Serverless コレクションへの検索やインデックス作成など) についての情報が得られます。これらのイベントは、データプレーンオペレーションとも呼ばれます。データイベントは、多くの場合、高ボリュームのアクティビティです。デフォルトでは、CloudTrail はデータイベントをログ記録しません。CloudTrail [イベント履歴] にはデータイベントは記録されません。

追加の変更がイベントデータに適用されます。CloudTrail の料金の詳細については、「AWS CloudTrail の料金」を参照してください。

CloudTrail コンソール、AWS CLI、または CloudTrail API オペレーションを使用して、AWS::AOSS::Collection リソースタイプのデータイベントをログ記録できます。データイベントをログに記録する方法の詳細については、「AWS CloudTrail ユーザーガイド」の「AWS マネジメントコンソール を使用したデータイベントのログ記録」および「AWS Command Line Interface を使用したデータイベントのログ記録」を参照してください。

eventNamereadOnly、および resources.ARN フィールドでフィルタリングして、自分にとって重要なイベントのみをログに記録するように高度なイベントセレクタを設定できます。オブジェクトの詳細については、「AWS CloudTrail API リファレンス」の「AdvancedFieldSelector」を参照してください。

Amazon OpenSearch Serverless のデータイベントエントリを理解する

以下の例で、次の操作を行います。

  • requestParameters フィールドには、コレクションに対して行われた API コールに関する詳細が含まれます。これには、基本リクエストパス (クエリパラメータなし) が含まれます。

  • responseElements フィールドには、リソースの変更時にリクエストの結果を示すステータスコードが含まれます。このステータスコードは、変更が正常に処理されたか、注意が必要かを追跡するのに役立ちます。

  • OpenSearch Serverless は、IAM 認証を正常に完了したリクエストに対してのみ CloudTrail データイベントを記録します。

{ "eventVersion": "1.11", "userIdentity": { "type": "AssumedRole", "principalId": "AROA123456789EXAMPLE", "arn": "arn:aws::sts::111122223333:assumed-role/Admin/user-role", "accountId": "111122223333", "accessKeyId": "access-key", "userName": "", "sessionContext": { "sessionIssuer": { "type": "Role", "principalId": "AROA123456789EXAMPLE", "arn": "arn:aws:iam::111122223333:role/Admin", "accountId": "111122223333", "userName": "Admin" }, "attributes": { "creationDate": "2025-08-15T22:57:38Z", "mfaAuthenticated": "false" }, "sourceIdentity": "", "ec2RoleDelivery": "", "assumedRoot": "" }, "identityProvider": "", "credentialId": "" }, "eventTime": "2025-08-15T22:58:00Z", "eventSource": "aoss.amazonaws.com", "eventName": "Search", "awsRegion": "us-east-1", "sourceIPAddress": "AWS Internal", "userAgent": "python-requests/2.32.3", "requestParameters": { "pathPrefix": "/_search" }, "responseElements": null, "requestID": "2cfee788-EXAM-PLE1-8617-4018cEXAMPLE", "eventID": "48d43617-EXAM-PLE1-9d9c-f7EXAMPLE", "readOnly": true, "resources": [ { "type": "AWS::AOSS::Collection", "ARN": "arn:aws:aoss:us-east-1:111122223333:collection/aab9texampletu45xh77" } ], "eventType": "AwsApiCall", "managementEvent": false, "recipientAccountId": "111122223333", "eventCategory": "Data" } ] }

OpenSearch Serverless Management Events エントリを理解する

「トレイル」は、指定した Amazon S3 バケットにイベントをログファイルとして配信するように設定できます。CloudTrail ログファイルには、1 つ以上のログエントリがあります。

イベントは、任意の送信元からの単一のリクエストを表します。これには、リクエストされたアクション、アクションの日時、リクエストパラメータなどに関する情報が含まれます。CloudTrail ログファイルは、パブリック API 呼び出しの順序付けられたスタックトレースではないため、特定の順序では表示されません。

以下の例は、CreateCollection アクションを示す CloudTrail ログエントリです。

{ "eventVersion":"1.08", "userIdentity":{ "type":"AssumedRole", "principalId":"AIDACKCEVSQ6C2EXAMPLE", "arn":"arn:aws:iam::123456789012:user/test-user", "accountId":"123456789012", "accessKeyId":"access-key", "sessionContext":{ "sessionIssuer":{ "type":"Role", "principalId":"AIDACKCEVSQ6C2EXAMPLE", "arn":"arn:aws:iam::123456789012:role/Admin", "accountId":"123456789012", "userName":"Admin" }, "webIdFederationData":{ }, "attributes":{ "creationDate":"2022-04-08T14:11:34Z", "mfaAuthenticated":"false" } } }, "eventTime":"2022-04-08T14:11:49Z", "eventSource":"aoss.amazonaws.com", "eventName":"CreateCollection", "awsRegion":"us-east-1", "sourceIPAddress":"AWS Internal", "userAgent":"aws-cli/2.1.30 Python/3.8.8 Linux/5.4.176-103.347.amzn2int.x86_64 exe/x86_64.amzn.2 prompt/off command/aoss.create-collection", "errorCode":"HttpFailureException", "errorMessage":"An unknown error occurred", "requestParameters":{ "accountId":"123456789012", "name":"test-collection", "description":"A sample collection", "clientToken":"d3a227d2-a2a7-49a6-8fb2-e5c8303c0718" }, "responseElements": null, "requestID":"12345678-1234-1234-1234-987654321098", "eventID":"12345678-1234-1234-1234-987654321098", "readOnly":false, "eventType":"AwsApiCall", "managementEvent":true, "recipientAccountId":"123456789012", "eventCategory":"Management", "tlsDetails":{ "clientProvidedHostHeader":"user.aoss-sample.us-east-1.amazonaws.com" } }