

的版本 5 (V5) AWS Tools for PowerShell 已经发布！

有关重大更改和迁移应用程序的信息，请参阅[迁移主题](https://docs.aws.amazon.com/powershell/v5/userguide/migrating-v5.html)。

 [https://docs.aws.amazon.com/powershell/v5/userguide/migrating-v5.html](https://docs.aws.amazon.com/powershell/v5/userguide/migrating-v5.html)

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

# CloudTrail 使用适用于 PowerShell V5 的工具的示例
<a name="powershell_cloudtrail_code_examples"></a>

以下代码示例向您展示了如何使用带 CloudTrail的 AWS Tools for PowerShell V5 来执行操作和实现常见场景。

*操作*是大型程序的代码摘录，必须在上下文中运行。您可以通过操作了解如何调用单个服务函数，还可以通过函数相关场景的上下文查看操作。

每个示例都包含一个指向完整源代码的链接，您可以从中找到有关如何在上下文中设置和运行代码的说明。

**Topics**
+ [操作](#actions)

## 操作
<a name="actions"></a>

### `Find-CTEvent`
<a name="cloudtrail_LookupEvents_powershell_topic"></a>

以下代码示例演示了如何使用 `Find-CTEvent`。

**适用于 PowerShell V5 的工具**  
**示例 1：返回过去七天内发生的所有事件。默认情况下，cmdlet 会自动发出多个调用以传送所有事件，当服务指示没有更多数据可用时退出。**  

```
Find-CTEvent
```
**示例 2：返回过去七天内发生的所有事件，且指定的区域不是当前 Shell 默认区域。**  

```
Find-CTEvent -Region eu-central-1
```
**示例 3：返回与 RunInstances API 调用关联的所有事件。**  

```
Find-CTEvent -LookupAttribute @{ AttributeKey="EventName"; AttributeValue="RunInstances" }
```
**示例 4：返回前 5 个可用事件。**  

```
Find-CTEvent -MaxResult 5
```
+  有关 API 的详细信息，请参阅 *AWS Tools for PowerShell Cmdlet 参考 (V* 5) [LookupEvents](https://docs.aws.amazon.com/powershell/v5/reference)中的。

### `Get-CTTrail`
<a name="cloudtrail_DescribeTrails_powershell_topic"></a>

以下代码示例演示了如何使用 `Get-CTTrail`。

**适用于 PowerShell V5 的工具**  
**示例 1：返回与您账户的当前区域关联的所有跟踪的设置。**  

```
Get-CTTrail
```
**示例 2：返回指定跟踪的设置。**  

```
Get-CTTrail -TrailNameList trail1,trail2
```
**示例 3：返回在当前 Shell 默认区域以外的区域 [在本例中为法兰克福（eu-central-1）区域] 中创建的指定跟踪的设置。**  

```
Get-CTTrail -TrailNameList trailABC,trailDEF -Region eu-central-1
```
+  有关 API 的详细信息，请参阅 *AWS Tools for PowerShell Cmdlet 参考 (V* 5) [DescribeTrails](https://docs.aws.amazon.com/powershell/v5/reference)中的。

### `Get-CTTrailStatus`
<a name="cloudtrail_GetTrailStatus_powershell_topic"></a>

以下代码示例演示了如何使用 `Get-CTTrailStatus`。

**适用于 PowerShell V5 的工具**  
**示例 1：返回名为 “myExampleTrail” 的跟踪的状态信息。返回的数据包括有关传输错误、Amazon SNS 和 Amazon S3 错误以及跟踪的开始和停止日志记录时间的信息。此示例假设跟踪是在与当前 Shell 默认区域相同的区域中创建的。**  

```
Get-CTTrailStatus -Name myExampleTrail
```
**示例 2：返回在当前 Shell 默认区域以外的区域 [在本例中为法兰克福（eu-central-1）区域] 中创建的跟踪的状态信息。**  

```
Get-CTTrailStatus -Name myExampleTrail -Region eu-central-1
```
+  有关 API 的详细信息，请参阅 *AWS Tools for PowerShell Cmdlet 参考 (V* 5) [GetTrailStatus](https://docs.aws.amazon.com/powershell/v5/reference)中的。

### `New-CTTrail`
<a name="cloudtrail_CreateTrail_powershell_topic"></a>

以下代码示例演示了如何使用 `New-CTTrail`。

**适用于 PowerShell V5 的工具**  
**示例 1：创建将使用存储桶“amzn-s3-demo-bucket”来存储日志文件的跟踪。**  

```
New-CTTrail -Name "awscloudtrail-example" -S3BucketName "amzn-s3-demo-bucket"
```
**示例 2：创建将使用存储桶“amzn-s3-demo-bucket”来存储日志文件的跟踪。表示日志的 S3 对象的通用键前缀为“mylogs”。当新日志传送到存储桶时，系统将向 SNS 主题“mlog-deliverytopic”发送通知。此示例使用 splatting 向 cmdlet 提供参数值。**  

```
$params = @{
    Name="awscloudtrail-example"
    S3BucketName="amzn-s3-demo-bucket"
    S3KeyPrefix="mylogs"
    SnsTopicName="mlog-deliverytopic"
}      
New-CTTrail @params
```
+  有关 API 的详细信息，请参阅 *AWS Tools for PowerShell Cmdlet 参考 (V* 5) [CreateTrail](https://docs.aws.amazon.com/powershell/v5/reference)中的。

### `Remove-CTTrail`
<a name="cloudtrail_DeleteTrail_powershell_topic"></a>

以下代码示例演示了如何使用 `Remove-CTTrail`。

**适用于 PowerShell V5 的工具**  
**示例 1：删除指定的跟踪。在运行此命令之前，系统会提示您进行确认。要禁止确认，请添加 -Force 开关参数。**  

```
Remove-CTTrail -Name "awscloudtrail-example"
```
+  有关 API 的详细信息，请参阅 *AWS Tools for PowerShell Cmdlet 参考 (V* 5) [DeleteTrail](https://docs.aws.amazon.com/powershell/v5/reference)中的。

### `Start-CTLogging`
<a name="cloudtrail_StartLogging_powershell_topic"></a>

以下代码示例演示了如何使用 `Start-CTLogging`。

**适用于 PowerShell V5 的工具**  
**示例 1：开始为名为 “myExampleTrail” 的跟踪记录 AWS API 调用和日志文件传输。此示例假设跟踪是在与当前 Shell 默认区域相同的区域中创建的。**  

```
Start-CTLogging -Name myExampleTrail
```
**示例 2：开始记录在当前外壳默认区域（在本例中为法兰克福 (eu-central-1) 区域）中创建的跟踪 AWS API 调用和日志文件传输。**  

```
Start-CTLogging -Name myExampleTrail -Region eu-central-1
```
+  有关 API 的详细信息，请参阅 *AWS Tools for PowerShell Cmdlet 参考 (V* 5) [StartLogging](https://docs.aws.amazon.com/powershell/v5/reference)中的。

### `Stop-CTLogging`
<a name="cloudtrail_StopLogging_powershell_topic"></a>

以下代码示例演示了如何使用 `Stop-CTLogging`。

**适用于 PowerShell V5 的工具**  
**示例 1：暂停记录名为 “myExampleTrail” 的跟踪的 AWS API 调用和日志文件传输。此示例假设跟踪是在与当前 Shell 默认区域相同的区域中创建的。**  

```
Stop-CTLogging -Name myExampleTrail
```
**示例 2：暂停记录在当前外壳默认区域（在本例中为法兰克福（eu-central-1）区域）中创建的跟踪 AWS API 调用和日志文件传输。**  

```
Stop-CTLogging -Name myExampleTrail -Region eu-central-1
```
+  有关 API 的详细信息，请参阅 *AWS Tools for PowerShell Cmdlet 参考 (V* 5) [StopLogging](https://docs.aws.amazon.com/powershell/v5/reference)中的。

### `Update-CTTrail`
<a name="cloudtrail_UpdateTrail_powershell_topic"></a>

以下代码示例演示了如何使用 `Update-CTTrail`。

**适用于 PowerShell V5 的工具**  
**示例 1：更新指定的跟踪，以便记录全局服务事件（例如来自 IAM 的服务事件），并将后续日志文件的通用键前缀更改为“globallogs”。**  

```
Update-CTTrail -Name "awscloudtrail-example" -IncludeGlobalServiceEvents $true -S3KeyPrefix "globallogs"
```
**示例 2：更新指定的跟踪，以便将有关新日志传输的通知发送到指定的 SNS 主题。**  

```
Update-CTTrail -Name "awscloudtrail-example" -SnsTopicName "mlog-deliverytopic2"
```
**示例 3：更新指定的跟踪，以便将日志传送到其它存储桶。**  

```
Update-CTTrail -Name "awscloudtrail-example" -S3BucketName "otherlogs"
```
+  有关 API 的详细信息，请参阅 *AWS Tools for PowerShell Cmdlet 参考 (V* 5) [UpdateTrail](https://docs.aws.amazon.com/powershell/v5/reference)中的。