を使用した App Runner API コールのログ記録 AWS CloudTrail - AWS App Runner

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

を使用した App Runner API コールのログ記録 AWS CloudTrail

App Runner は AWS CloudTrail、App Runner のユーザー、ロール、または のサービスによって実行されたアクションを記録する AWS サービスである と統合されています。CloudTrail は、App Runner のすべての API コールをイベントとしてキャプチャします。キャプチャされた呼び出しには、App Runner コンソールからの呼び出しと App Runner API オペレーションへのコード呼び出しが含まれます。証跡を作成する場合は、App Runner のイベントなど、Amazon S3 バケットへの CloudTrail イベントの継続的な配信を有効にすることができます。証跡を設定しない場合でも、CloudTrail コンソールの [イベント履歴] で最新のイベントを表示できます。CloudTrail で収集された情報を使用して、App Runner に対するリクエスト、リクエスト元の IP アドレス、リクエスト者、リクエスト日時などの詳細を確認できます。

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

CloudTrail の App Runner 情報

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

App Runner のイベントなど AWS アカウント、 のイベントの継続的な記録については、証跡を作成します。証跡により、CloudTrail はログファイルを Amazon S3 バケットに配信できます。デフォルトでは、コンソールで証跡を作成するときに、証跡がすべての AWS リージョンに適用されます。証跡は、 AWS パーティション内のすべてのリージョンからのイベントをログに記録し、指定した Amazon S3 バケットにログファイルを配信します。さらに、CloudTrail ログで収集されたイベントデータをさらに分析して処理するように他の AWS サービスを設定できます。詳細については、次を参照してください:

すべての App Runner アクションは CloudTrail によってログに記録され、 AWS App Runner API リファレンスに記載されています。たとえば、CreateServiceDeleteConnectionStartDeployment の各アクションを呼び出すと、CloudTrail ログファイルにエントリが生成されます。

各イベントまたはログエントリには、リクエストの生成者に関する情報が含まれます。同一性情報は次の判断に役立ちます。

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

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

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

詳細については、「CloudTrail userIdentity 要素」を参照してください。

App Runner ログファイルエントリについて

「トレイル」は、指定した Amazon S3 バケットにイベントをログファイルとして配信するように設定できます。CloudTrail のログファイルには、ログエントリが 1 つ以上あります。イベントは、あらゆるソースからの単一のリクエストを表し、リクエストされたアクション、アクションの日時、およびリクエストパラメータに関する情報が含まれています。CloudTrail ログファイルは、パブリック API コールの順序付けられたスタックトレースではないため、特定の順序では表示されません。

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

注記

セキュリティ上の理由から、一部のプロパティ値はログで編集され、テキスト に置き換えられますHIDDEN_DUE_TO_SECURITY_REASONS。これにより、シークレット情報が意図せず公開されるのを防ぐことができます。ただし、これらのプロパティがリクエストで渡されたか、レスポンスで返されたことがわかります。

{ "eventVersion": "1.08", "userIdentity": { "type": "IAMUser", "principalId": "AIDACKCEVSQ6C2EXAMPLE", "arn": "arn:aws:iam::123456789012:user/aws-user", "accountId": "123456789012", "accessKeyId": "AKIAIOSFODNN7EXAMPLE", "userName": "aws-user" }, "eventTime": "2020-10-02T23:25:33Z", "eventSource": "apprunner.amazonaws.com", "eventName": "CreateService", "awsRegion": "us-east-2", "sourceIPAddress": "192.0.2.0", "userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/77.0.3865.75 Safari/537.36", "requestParameters": { "serviceName": "python-test", "sourceConfiguration": { "codeRepository": { "repositoryUrl": "https://github.com/github-user/python-hello", "sourceCodeVersion": { "type": "BRANCH", "value": "main" }, "codeConfiguration": { "configurationSource": "API", "codeConfigurationValues": { "runtime": "python3", "buildCommand": "HIDDEN_DUE_TO_SECURITY_REASONS", "startCommand": "HIDDEN_DUE_TO_SECURITY_REASONS", "port": "8080", "runtimeEnvironmentVariables": "HIDDEN_DUE_TO_SECURITY_REASONS" } } }, "autoDeploymentsEnabled": true, "authenticationConfiguration": { "connectionArn": "arn:aws:apprunner:us-east-2:123456789012:connection/your-connection/e7656250f67242d7819feade6800f59e" } }, "healthCheckConfiguration": { "protocol": "HTTP" }, "instanceConfiguration": { "cpu": "256", "memory": "1024" } }, "responseElements": { "service": { "serviceName": "python-test", "serviceId": "dfa2b7cc7bcb4b6fa6c1f0f4efff988a", "serviceArn": "arn:aws:apprunner:us-east-2:123456789012:service/python-test/dfa2b7cc7bcb4b6fa6c1f0f4efff988a", "serviceUrl": "generated domain", "createdAt": "2020-10-02T23:25:32.650Z", "updatedAt": "2020-10-02T23:25:32.650Z", "status": "OPERATION_IN_PROGRESS", "sourceConfiguration": { "codeRepository": { "repositoryUrl": "https://github.com/github-user/python-hello", "sourceCodeVersion": { "type": "Branch", "value": "main" }, "sourceDirectory": "/", "codeConfiguration": { "codeConfigurationValues": { "configurationSource": "API", "runtime": "python3", "buildCommand": "HIDDEN_DUE_TO_SECURITY_REASONS", "startCommand": "HIDDEN_DUE_TO_SECURITY_REASONS", "port": "8080", "runtimeEnvironmentVariables": "HIDDEN_DUE_TO_SECURITY_REASONS" } } }, "autoDeploymentsEnabled": true, "authenticationConfiguration": { "connectionArn": "arn:aws:apprunner:us-east-2:123456789012:connection/your-connection/e7656250f67242d7819feade6800f59e" } }, "healthCheckConfiguration": { "protocol": "HTTP", "path": "/", "interval": 5, "timeout": 2, "healthyThreshold": 3, "unhealthyThreshold": 5 }, "instanceConfiguration": { "cpu": "256", "memory": "1024" }, "autoScalingConfigurationSummary": { "autoScalingConfigurationArn": "arn:aws:apprunner:us-east-2:123456789012:autoscalingconfiguration/DefaultConfiguration/1/00000000000000000000000000000001", "autoScalingConfigurationName": "DefaultConfiguration", "autoScalingConfigurationRevision": 1 } } }, "requestID": "1a60af60-ecf5-4280-aa8f-64538319ba0a", "eventID": "e1a3f623-4d24-4390-a70b-bf08a0e24669", "readOnly": false, "eventType": "AwsApiCall", "recipientAccountId": "123456789012" }