

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 使用 AWS CloudTrail 记录 AppStream 2.0 API 调用
<a name="logging-using-cloudtrail"></a>

Amazon AppStream 2.0 与 AWS CloudTrail 集成。CloudTrail 是提供用户、角色或 AWS 服务在 AppStream 2.0 中所采取操作的记录的服务。CloudTrail 将 AppStream 2.0 的 API 调用作为事件捕获。这些捕获的调用包含来自 AppStream 2.0 控制台的调用和代码对 AppStream 2.0 API 操作的调用。如果您创建跟踪记录，则可以使 CloudTrail 事件持续传送到 Amazon S3 存储桶（包括 AppStream 2.0 的事件）。如果您不配置跟踪，则仍可在 CloudTrail 控制台中的**事件历史记录**中查看最新事件。您可以使用 CloudTrail 收集的信息确定详细信息（如请求信息）。例如，CloudTrail 收集以下信息：向 AppStream 2.0 发出了什么请求、发出请求的 IP 地址、何人发出的请求以及发出请求的时间等。

要了解有关 CloudTrail 的更多信息（包括如何对其进行配置和启用），请参阅 [AWS CloudTrail《用户指南》](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/)。

**Topics**
+ [CloudTrail 中的 AppStream 2.0 信息](service-name-info-in-cloudtrail.md)
+ [示例：AppStream 2.0 日志文件条目](understanding-service-name-entries.md)

# CloudTrail 中的 AppStream 2.0 信息
<a name="service-name-info-in-cloudtrail"></a>

在您创建 AWS 账户时，将在该账户上启用 CloudTrail。当 AppStream 2.0 中发生受支持的事件活动时，该活动将记录在 CloudTrail 事件中，并与其他 AWS 服务事件一同保存在**事件历史记录**中。您可以在 AWS 账户中查看、搜索和下载最新事件。有关更多信息，请参阅[使用 CloudTrail 事件历史记录查看事件](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/view-cloudtrail-events.html)。

要持续记录 AWS 账户中的事件（包括 AppStream 2.0 的事件），请创建跟踪记录。通过*跟踪记录*，CloudTrail 可将日志文件传送至 Amazon S3 存储桶。预设情况下，在控制台中创建跟踪时，此跟踪应用于所有 AWS 区域。此跟踪记录在 AWS 分区中记录所有区域中的事件，并将日志文件传送至您指定的 Amazon S3 存储桶。此外，您可以配置其他 AWS 服务，进一步分析在 CloudTrail 日志中收集的事件数据并采取行动。有关更多信息，请参阅下列内容：
+ [创建跟踪概述](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-create-and-update-a-trail.html)
+ [CloudTrail 支持的服务和集成](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-aws-service-specific-topics.html#cloudtrail-aws-service-specific-topics-integrations)
+ [为 CloudTrail 配置 Amazon SNS 通知](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/getting_notifications_top_level.html)
+ [从多个区域接收 CloudTrail 日志文件](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/receive-cloudtrail-log-files-from-multiple-regions.html)和[从多个账户接收 CloudTrail 日志文件](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-receive-logs-from-multiple-accounts.html)

AppStream 2.0 支持将以下操作记录为 CloudTrail 日志文件中的事件：
+ [AssociateFleet](https://docs.aws.amazon.com/appstream2/latest/APIReference/API_AssociateFleet.html)
+ [BatchAssociateUserStack](https://docs.aws.amazon.com/appstream2/latest/APIReference/API_BatchAssociateUserStack.html)
+ [BatchDisassociateUserStack](https://docs.aws.amazon.com/appstream2/latest/APIReference/API_BatchDisassociateUserStack.html)
+ [CopyImage](https://docs.aws.amazon.com/appstream2/latest/APIReference/API_CopyImage.html)
+ [CreateDirectoryConfig](https://docs.aws.amazon.com/appstream2/latest/APIReference/API_CreateDirectoryConfig.html)
+ [CreateFleet](https://docs.aws.amazon.com/appstream2/latest/APIReference/API_CreateFleet.html)
+ [CreateImageBuilder](https://docs.aws.amazon.com/appstream2/latest/APIReference/API_CreateImageBuilder.html)
+ [CreateImageBuilderStreamingURL](https://docs.aws.amazon.com/appstream2/latest/APIReference/API_CreateImageBuilderStreamingURL.html)
+ [CreateStack](https://docs.aws.amazon.com/appstream2/latest/APIReference/API_CreateStack.html)
+ [CreateStreamingURL](https://docs.aws.amazon.com/appstream2/latest/APIReference/API_CreateStreamingURL.html)
+ [DeleteDirectoryConfig](https://docs.aws.amazon.com/appstream2/latest/APIReference/API_DeleteDirectoryConfig.html)
+ [DeleteFleet](https://docs.aws.amazon.com/appstream2/latest/APIReference/API_DeleteFleet.html)
+ [DeleteImage](https://docs.aws.amazon.com/appstream2/latest/APIReference/API_DeleteImage.html)
+ [DeleteImageBuilder](https://docs.aws.amazon.com/appstream2/latest/APIReference/API_DeleteImageBuilder.html)
+ [DeleteImagePermissions](https://docs.aws.amazon.com/appstream2/latest/APIReference/API_DeleteImagePermissions.html)
+ [DeleteStack](https://docs.aws.amazon.com/appstream2/latest/APIReference/API_DeleteStack.html)
+ [DescribeDirectoryConfigs](https://docs.aws.amazon.com/appstream2/latest/APIReference/API_DescribeDirectoryConfigs.html)
+ [DescribeFleets](https://docs.aws.amazon.com/appstream2/latest/APIReference/API_DescribeFleets.html)
+ [DescribeImageBuilders](https://docs.aws.amazon.com/appstream2/latest/APIReference/API_DescribeImageBuilders.html)
+ [DescribeImagePermissions](https://docs.aws.amazon.com/appstream2/latest/APIReference/API_DescribeImagePermissions.html)
+ [DescribeImages](https://docs.aws.amazon.com/appstream2/latest/APIReference/API_DescribeImages.html)
+ [DescribeSessions](https://docs.aws.amazon.com/appstream2/latest/APIReference/API_DescribeSessions.html)
+ [DescribeStacks](https://docs.aws.amazon.com/appstream2/latest/APIReference/API_DescribeStacks.html)
+ [DescribeUserStackAssociations](https://docs.aws.amazon.com/appstream2/latest/APIReference/API_DescribeUserStackAssociations.html)
+ [ExpireSession](https://docs.aws.amazon.com/appstream2/latest/APIReference/API_ExpireSession.html)
+ [ListAssociatedFleets](https://docs.aws.amazon.com/appstream2/latest/APIReference/API_ListAssociatedFleets.html)
+ [ListAssociatedStacks](https://docs.aws.amazon.com/appstream2/latest/APIReference/API_ListAssociatedStacks.html)
+ [ListTagsForResource](https://docs.aws.amazon.com/appstream2/latest/APIReference/API_ListTagsForResource.html)
+ [StartFleet](https://docs.aws.amazon.com/appstream2/latest/APIReference/API_StartFleet.html)
+ [StartImageBuilder](https://docs.aws.amazon.com/appstream2/latest/APIReference/API_StartImageBuilder.html)
+ [StopFleet](https://docs.aws.amazon.com/appstream2/latest/APIReference/API_StopFleet.html)
+ [StopImageBuilder](https://docs.aws.amazon.com/appstream2/latest/APIReference/API_StopImageBuilder.html)
+ [TagResource](https://docs.aws.amazon.com/appstream2/latest/APIReference/API_TagResource.html)
+ [UntagResource](https://docs.aws.amazon.com/appstream2/latest/APIReference/API_UntagResource.html)
+ [UpdateDirectoryConfig](https://docs.aws.amazon.com/appstream2/latest/APIReference/API_UpdateDirectoryConfig.html)
+ [UpdateFleet](https://docs.aws.amazon.com/appstream2/latest/APIReference/API_UpdateFleet.html)
+ [UpdateImagePermissions](https://docs.aws.amazon.com/appstream2/latest/APIReference/API_UpdateImagePermissions.html)
+ [UpdateStack](https://docs.aws.amazon.com/appstream2/latest/APIReference/API_UpdateStack.html)

每个事件或日志条目都包含有关生成请求的人员信息。身份信息可帮助您确定以下内容：
+ 请求是使用根用户凭证还是 IAM 用户凭证发出的。
+ 请求是使用角色还是联合用户的临时安全凭证发出的。
+ 请求是否由其他 AWS 服务发出。

有关更多信息，请参阅 [CloudTrail userIdentity 元素](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-event-reference-user-identity.html)。

# 示例：AppStream 2.0 日志文件条目
<a name="understanding-service-name-entries"></a>

 跟踪是一种配置，可用于将事件作为日志文件传送到您指定的 Amazon S3 存储桶。CloudTrail 日志文件包含一个或多个日记账条目。一个事件表示来自任何源的一个请求，包括有关所请求的操作、操作的日期和时间、请求参数等方面的信息。CloudTrail 日志文件不是公用 API 调用的有序堆栈跟踪，因此它们不会按任何特定顺序显示。

下面的示例显示了一个 CloudTrail 日志条目，该条目说明了 `AssociateFleet` 事件。

```
{
  "eventVersion": "1.05",
  "userIdentity": {
    "type": "AssumedRole",
    "principalId": "AIDACKCEVSQ6C2EXAMPLE:janeroe",
    "arn": "arn:aws:sts:: 123456789012:assumed-role/Admin/janeroe",
    "accountId": "123456789012",
    "accessKeyId": "AKIAIOSFODNN7EXAMPLE",
    "sessionContext": {
      "attributes": {
        "mfaAuthenticated": "false",
        "creationDate": "2019-03-12T06:41:50Z"
      },
      "sessionIssuer": {
        "type": "Role",
        "principalId": "AIDACKCEVSQ6C2EXAMPLE",
        "arn": "arn:aws:iam:: 123456789012:role/Admin",
        "accountId": "123456789012",
        "userName": "Admin"
      }
    }
  },
  "eventTime": "2019-03-12T06:58:09Z",
  "eventSource": "appstream.amazonaws.com",
  "eventName": "AssociateFleet",
  "awsRegion": "us-east-1",
  "sourceIPAddress": "198.51.100.15",
  "userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.121 Safari/537.36",
  "requestParameters": {
    "fleetName": "ExampleFleet1",
    "stackName": "ExampleStack1"
  },
  "responseElements": null,
  "requestID": "3210a159-4494-11e9-8017-873084baf125",
  "eventID": "a6fbde60-a55a-46fe-87d4-89ead558dffd",
  "eventType": "AwsApiCall",
  "recipientAccountId": "123456789012"
}
```

以下示例显示一个 CloudTrail 日志条目，它说明了使用 AppStream 2.0 映像生成器创建映像时发生的 `CreateImage` 事件。

```
{
  "eventVersion": "1.05",
  "userIdentity": {
    "arn": "arn:aws:appstream:us-east-1: 123456789012:image-builder/ExampleImageBuilder",
    "accountId": "123456789012"
  },
  "eventTime": "2019-03-21T22:32:05Z",
  "eventSource": "appstream.amazonaws.com",
  "eventName": "CreateImage",
  "awsRegion": "us-east-1",
  "requestParameters": null,
  "responseElements": null,
  "eventID": "12b2d6e2-c9a9-402e-8886-2c388d3df610",
  "readOnly": false,
  "eventType": "AwsServiceEvent",
  "recipientAccountId": "123456789012",
  "serviceEventDetails": {
    "ImageName": "ExampleImage1",
    "ImagePlatform": "WINDOWS",
    "PublicBaseImageReleasedDate": "Tue Jan 15 22:19:56 UTC 2019",
    "ImageDisPlayName": "Example Image 1",
    "ImageBuilderSupported": "True",
    "ImageCreatedTime": "Thu Mar 21 22:32:05 UTC 2019",
    "ImageDescription": "Example image for testing",
    "ImageState": "PENDING"
  }
}
```