翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
AWS CloudTrail を使用した CodePipeline API コールのログ記録
AWS CodePipeline は、CodePipeline のユーザー、ロール、または AWS のサービス によって実行されたアクションを記録するサービスである AWS CloudTrail と統合されています。CloudTrail は、CodePipeline のすべての API コールをイベントとしてキャプチャします。キャプチャされたコールには、CodePipeline コンソールのコールと、CodePipeline API オペレーションへのコードコールが含まれます。証跡を作成する場合は、CodePipeline のイベントなど、Amazon S3 バケットへの CloudTrail イベントの継続的な配信を有効にすることができます。追跡を設定しない場合でも、CloudTrail コンソールの [Event history] (イベント履歴) で最新のイベントを表示できます。CloudTrail で収集された情報を使用して、CodePipeline に対するリクエスト、リクエスト元の IP アドレス、リクエスト者、リクエスト日時などの詳細を確認できます。
CloudTrail の詳細については、 『AWS CloudTrail ユーザーガイド』を参照してください。
CloudTrail での CodePipeline 情報
CloudTrail は、AWS アカウントを作成すると、その中で有効になります。CodePipeline でアクティビティが発生すると、そのアクティビティは CloudTrail のイベントとして、他の AWS のサービス ベントと共に イベント履歴 に記録されます。最近のイベントは、AWSアカウントで表示、検索、ダウンロードできます。詳細については、 「CloudTrail イベント履歴でのイベントの表示」を参照してください。
CodePipeline のイベントなど、AWS アカウント のイベントの継続的な記録については、証跡を作成します。証跡により、ログファイルを CloudTrail で Amazon S3 バケットに配信できます。デフォルトでは、コンソールで証跡を作成すると、すべての AWS リージョンに証跡が適用されます。証跡は、AWSパーティションのすべてのリージョンからのイベントをログに記録し、指定した Amazon S3 バケットにログファイルを配信します。さらに、CloudTrail ログで収集されたイベントデータをより詳細に分析し、それを基にアクションを取るために他の AWS のサービス を設定できます。詳細については、次を参照してください:
すべての CodePipeline アクションは CloudTrail が記録します。これらのアクションは CodePipeline API リファレンス で説明されています。例えば、CreatePipeline、GetPipelineExecution、UpdatePipeline の各アクションを呼び出すと、CloudTrail ログファイルにエントリが生成されます。
各イベントまたはログエントリには、誰がリクエストを生成したかという情報が含まれます。アイデンティティ情報は、以下を判別するのに役立ちます。
-
リクエストが、ルートと AWS Identity and Access Management (IAM) 認証情報のどちらを使用して送信されたか
-
リクエストがロールまたはフェデレーションユーザーのテンポラリなセキュリティ認証情報を使用して行われたかどうか。
-
リクエストが、別の AWS のサービス によって送信されたかどうか。
詳細については、「CloudTrail userIdentity 要素」を参照してください。
CodePipeline ログファイルエントリについて
「証跡」は、指定した Simple Storage Service (Amazon S3) バケットにイベントをログファイルとして配信するように設定できます。CloudTrail のログファイルは、単一か複数のログエントリを含みます。イベントは任意ソースからの単一リクエストを表し、リクエストされたアクション、アクションの日時、リクエストパラメータなどの情報を含みます。CloudTrail ログファイルは、パブリック API 呼び出しの順序付けられたスタックトレースではないため、特定の順序では表示されません。
以下の例では、パイプラインのアップデートイベントの CloudTrail ログエントリを示します。ここで、パイプライン (MyFirstPipeline) が、アカウントID (80398EXAMPLE) を持つユーザー (JaneDoe-CodePipeline) によって編集されています。ユーザーは、パイプラインのソースステージ名を Source から MySourceStage に変更しました。CloudTrail ログの requestParameters と responseElements のいずれにも、編集後のパイプラインの構造全体が含まれているため、これらの要素は、以下の例で省略されています。強調 が、変更されたパイプラインの requestParameters 部分、以前のバージョン番号のパイプライン、responseElements 部分に追加されています。これは、バージョン番号が 1 ずつインクリメントすることを意味します。実際のログエントリでより多くのデータが表示された場合、編集した部分は省略記号 (...) でマークされます。
{ "eventVersion":"1.03", "userIdentity": { "type":"IAMUser", "principalId":"AKIAI44QH8DHBEXAMPLE", "arn":"arn:aws:iam::80398EXAMPLE:user/JaneDoe-CodePipeline", "accountId":"80398EXAMPLE", "accessKeyId":"AKIAIOSFODNN7EXAMPLE", "userName":"JaneDoe-CodePipeline", "sessionContext": { "attributes":{ "mfaAuthenticated":"false", "creationDate":"2015-06-17T14:44:03Z" } }, "invokedBy":"signin.amazonaws.com"}, "eventTime":"2015-06-17T19:12:20Z", "eventSource":"codepipeline.amazonaws.com", "eventName":"UpdatePipeline", "awsRegion":"us-east-2", "sourceIPAddress":"192.0.2.64", "userAgent":"signin.amazonaws.com", "requestParameters":{ "pipeline":{ "version":1, "roleArn":"arn:aws:iam::80398EXAMPLE:role/CodePipeline_Service_Role", "name":"MyFirstPipeline", "stages":[ { "actions":[ { "name":"MySourceStage", "actionType":{ "owner":"AWS", "version":"1", "category":"Source", "provider":"S3" }, "inputArtifacts":[], "outputArtifacts":[ {"name":"MyApp"} ], "runOrder":1, "configuration":{ "S3Bucket":"amzn-s3-demo-source-bucket", "S3ObjectKey":"sampleapp_linux.zip" } } ], "name":"Source" }, (...) }, "responseElements":{ "pipeline":{ "version":2, (...) }, "requestID":"2c4af5c9-7ce8-EXAMPLE", "eventID":""c53dbd42-This-Is-An-Example"", "eventType":"AwsApiCall", "recipientAccountId":"80398EXAMPLE" } ] }