

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

# 步骤 3: 在 Amazon S3 中查询日志数据
<a name="kaw-ds2s3-tutorial-step3"></a>

在此 Amazon Kinesis 代理微软 Windows 的最后一步[教程](directory-source-to-s3-tutorial.md)中，您使用 Amazon Athena 查询 Amazon Simple Storage Service (Amazon S3) 中存储的日志数据。

1. 从 [https://console.aws.amazon.com/athena/](https://console.aws.amazon.com/athena/home) 打开 Athena 控制台。

1. 选择加号 (**\$1**）创建新的查询窗口。  
![\[演示如何在 Athena 中创建新的查询窗口的屏幕截图。\]](http://docs.aws.amazon.com/zh_cn/kinesis-agent-windows/latest/userguide/images/athena-new-query.png)

1. 在查询窗口中输入以下文本：

   ```
   CREATE DATABASE logdatabase
   
   CREATE EXTERNAL TABLE logs (
     Message string,
     Severity string,
     ComputerName string,
     DT timestamp
   )
   ROW FORMAT SERDE 'org.openx.data.jsonserde.JsonSerDe'
   LOCATION 's3://bucket/year/month/day/hour/'
   
   SELECT * FROM logs
   SELECT * FROM logs WHERE severity = 'Error'
   ```

   将 *`bucket`* 替换为您在[创建 Amazon S3 存储桶](kaw-ds2s3-tutorial-step1.md#kaw-ds2s3-tutorial-step1.2)中创建的存储桶的名称。Replace*`year`*、*`month`*、*`day`*和*`hour`*分别为 Amazon S3 日志文件的创建时间（用 UTC 表示）中的年、月、日和小时。

1. 选择 `CREATE DATABASE` 语句的文本，然后选择 **Run query (运行查询)**。这将在 Athena 中创建日志数据库。

1. 选择 `CREATE EXTERNAL TABLE` 语句的文本，然后选择 **Run query (运行查询)**。这将创建一个 Athena 表，该表使用日志数据引用 S3 存储桶，并将 JSON 的架构映射到 Athena 表的架构。

1. 选择第一个 `SELECT` 语句的文本，然后选择 **Run query (运行查询)**。这将显示表中的所有行。  
![\[演示如何使用 Athena 查询日志记录的屏幕截图。\]](http://docs.aws.amazon.com/zh_cn/kinesis-agent-windows/latest/userguide/images/athena-first-select.png)

1. 选择第二个 `SELECT` 语句的文本，然后选择 **Run query (运行查询)**。这仅显示表中表示具有 `Error` 级别严重性的日志记录的行。此类查询从可能很大的日志记录集中查找有趣的日志记录。  
![\[演示如何在 Athena 中查询特定类型的记录的屏幕截图。\]](http://docs.aws.amazon.com/zh_cn/kinesis-agent-windows/latest/userguide/images/athena-second-query.png)