AWS Batch
ユーザーガイド

AWS CloudTrail を使用した AWS Batch API コールのログ作成

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

CloudTrail の詳細については、「AWS CloudTrail User Guide」を参照してください。

CloudTrail 内の AWS Batch 情報

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

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

AWS Batch アクションはすべて CloudTrail によって記録されます。また、これらのアクションは https://docs.aws.amazon.com/batch/latest/APIReference/で説明されています。たとえば、[SubmitJob]、[ListJobs]、[DescribeJobs] セクションの呼び出しは、CloudTrail ログファイルにエントリを生成します。

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

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

  • リクエストが、ロールとフェデレーティッドユーザーのどちらの一時的なセキュリティ認証情報を使用して送信されたか.

  • リクエストが、別の AWS サービスによって送信されたかどうか。

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

AWS Batch ログファイルエントリの概要

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

次の例は、CreateComputeEnvironment アクションを表す CloudTrail ログエントリの例です。

{ "eventVersion": "1.05", "userIdentity": { "type": "AssumedRole", "principalId": "AIDACKCEVSQ6C2EXAMPLE:admin", "arn": "arn:aws:sts::012345678910:assumed-role/Admin/admin", "accountId": "012345678910", "accessKeyId": "AKIAIOSFODNN7EXAMPLE", "sessionContext": { "attributes": { "mfaAuthenticated": "false", "creationDate": "2017-12-20T00:48:46Z" }, "sessionIssuer": { "type": "Role", "principalId": "AIDACKCEVSQ6C2EXAMPLE", "arn": "arn:aws:iam::012345678910:role/Admin", "accountId": "012345678910", "userName": "Admin" } } }, "eventTime": "2017-12-20T00:48:46Z", "eventSource": "batch.amazonaws.com", "eventName": "CreateComputeEnvironment", "awsRegion": "us-east-1", "sourceIPAddress": "203.0.113.1", "userAgent": "aws-cli/1.11.167 Python/2.7.10 Darwin/16.7.0 botocore/1.7.25", "requestParameters": { "computeResources": { "subnets": [ "subnet-5eda8e04" ], "tags": { "testBatchTags": "CLI testing CE" }, "desiredvCpus": 0, "minvCpus": 0, "instanceTypes": [ "optimal" ], "securityGroupIds": [ "sg-aba9e8db" ], "instanceRole": "ecsInstanceRole", "maxvCpus": 128, "type": "EC2" }, "state": "ENABLED", "type": "MANAGED", "serviceRole": "service-role/AWSBatchServiceRole", "computeEnvironmentName": "Test" }, "responseElements": { "computeEnvironmentName": "Test", "computeEnvironmentArn": "arn:aws:batch:us-east-1:012345678910:compute-environment/Test" }, "requestID": "890b8639-e51f-11e7-b038-EXAMPLE", "eventID": "874f89fa-70fc-4798-bc00-EXAMPLE", "readOnly": false, "eventType": "AwsApiCall", "recipientAccountId": "012345678910" }