

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

# 登录和监控 AWS CloudShell
<a name="logging-and-monitoring"></a>

本主题介绍如何使用记录和监控 AWS CloudShell 活动和性能 CloudTrail。

## 使用监控活动 CloudTrail
<a name="cloudtrail-activity"></a>

AWS CloudShell 与 AWS CloudTrail一项服务集成，该服务提供用户、角色或 AWS 服务 中的操作记录 AWS CloudShell。 CloudTrail 将所有 API 调用捕获 AWS CloudShell 为事件。捕获的调用包括来自 AWS CloudShell 控制台的调用和对 AWS CloudShell API 的代码调用。

如果您创建了跟踪，则可以允许将 CloudTrail 事件持续传输到亚马逊简单存储服务 (Amazon S3) 存储桶。这包括以下活动： AWS CloudShell.

如果您不配置跟踪记录，则仍可在 CloudTrail 控制台的 **Event history**（事件历史记录）中查看最新事件。使用收集的信息 CloudTrail，您可以发现有关请求的各种信息。例如，您可以确定向 AWS 发出的请求 CloudShell，可以了解发出请求的 IP 地址、谁发出了请求以及何时发出。

## AWS CloudShell in CloudTrail
<a name="cloudtrail-cshell"></a>

下表列出了保存在 CloudTrail 日志文件中的 AWS CloudShell 事件。

**注意**  
AWS CloudShell 活动包括：  
 `*` 表示它是一个非变易（只读）API 调用。
单词 `Environment` 与托管 Shell 体验的计算环境的生命周期有关。
这个词可以`Layout`恢复 CloudShell终端中的所有浏览器选项卡。



**CloudShell 中的活动 CloudTrail**  

| 事件名称 | 说明 | 
| --- | --- | 
| createEnvironment | 在创建 CloudShell 环境时发生。 | 
| createSession | 当 CloudShell 环境从连接时发生 AWS 管理控制台。 | 
| deleteEnvironment | 在删除 CloudShell 环境时发生。 | 
| deleteSession | 在当前浏览器 CloudShell 选项卡中运行的选项卡中的会话被删除时发生。 | 
| getEnvironmentStatus\$1 |  在检索 CloudShell 环境状态时发生。  | 
| getFileDownloadUrls\$1 | 生成用于通过 CloudShell CloudShell 网络界面下载文件的预签名 Amazon S3 URLs 时发生。 | 
| getFileUploadUrls\$1 | 生成用于使用 CloudShell 网页界面上传文件的预签名 Amazon S3 URLs 时发生。 CloudShell  | 
| cloudshell:DescribeEnvironments | 描述环境。 | 
| getLayout\$1 | 在检索会话开始时的 CloudShell 布局时发生。 | 
| putCredentials |  当用于登录到的凭据 CloudShell 被 AWS 管理控制台 转发时发生。  | 
| redeemCode\$1 |  在 CloudShell环境中检索刷新令牌的工作流程开始时发生。您稍后可以在`putCredentials`命令中使用此令牌来访问 CloudShell 环境。  | 
| sendHeartBeat  | 用于确认会 CloudShell 话处于活动状态。 | 
| startEnvironment  | 在 CloudShell 环境启动时发生。 | 
| stopEnvironment  |  在运行 CloudShell 环境停止时发生。  | 
| updateLayout  | 保存后端 Web 应用程序的当前布局时发生。 | 



包含 “布局” 一词的事件会恢复 CloudShell终端中的所有浏览器选项卡。

**EventBridge AWS CloudShell 行动规则**

使用 EventBridge 规则，您可以指定在 EventBridge 收到与规则匹配的事件时要采取的目标操作。您可以定义一条规则，根据 CloudTrail 日志文件中记录为事件的 AWS CloudShell 操作来指定要采取的目标操作。

例如，您可以使用`put-rule`命令[创建 EventBridge 规则](https://docs.aws.amazon.com/cli/latest/reference/events/put-rule.html)。 AWS CLI呼`put-rule`叫必须至少包含 EventPattern 或 ScheduleExpression。当观察到匹配的事件时，会触发带有 EventPatterns 的规则。 EventPattern 对于 AWS CloudShell 活动：

```
{ "source": [ "aws.cloudshell" ], "detail-type": [ "AWS API Call via CloudTrail" ], "detail": { "eventSource": [ "cloudshell.amazonaws.com" ] } }
```

有关更多信息，请参阅 *Amazon EventBridge 用户指南 EventBridge*[中的事件和事件模式](https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-event-patterns.html)。