使用 CloudWatch 指标监控 Athena 查询
如果选择 publish query metrics to CloudWatch(将查询指标发布到 CloudWatch)选项,Athena 会将与查询相关的指标发布到 Amazon CloudWatch。您可以创建自定义控制面板,对 CloudWatch 中的指标设置警报和触发器,或从 Athena 控制台直接使用预先填充的控制面板。
为工作组中的查询启用查询指标时,这些指标将显示在 Workgroups(工作组)面板中的 Metrics(指标)选项卡,用于 Athena 控制台中的每个工作组。
Athena 会将以下指标发布到 CloudWatch 控制台:
-
EngineExecutionTime
– 以毫秒为单位 -
ProcessedBytes
– 对于每个 DML 查询扫描的总数据量 -
QueryPlanningTime
– 以毫秒为单位 -
QueryQueueTime
– 以毫秒为单位 -
ServiceProcessingTime
– 以毫秒为单位 -
TotalExecutionTime
– 以毫秒为单位,用于 DDL 和 DML 查询
这些指标具有以下维度:
-
QueryState
–SUCCEEDED
、FAILED
或CANCELED
-
QueryType
–DML
、DDL
或UTILITY
-
WorkGroup
– 工作组的名称
Athena 会将以下指标发布到 AmazonAthenaForApacheSpark
命名空间下的 CloudWatch 控制台:
-
DPUCount
– 会话期间为执行计算而使用的 DPU 数量。
该指标具有以下维度:
-
SessionId
– 提交计算的会话 ID。 -
WorkGroup
– 工作组名称。
有关更多信息,请参阅本主题后面的 Athena 的 CloudWatch 指标与维度列表。有关 Athena 使用情况指标的信息,请参阅 监控 Athena 用量指标。
在控制台中查看工作组的查询指标
从 https://console.aws.amazon.com/athena/
打开 Athena 控制台。 如果控制台导航窗格不可见,请选择左侧的扩展菜单。
-
在导航窗格中,选择 Workgroups(工作组)。
-
从列表中选择所需的工作组,然后选择 Metrics(指标)选项卡。
此时将显示指标控制面板。
注意
如果您最近刚为工作组启用了指标和/或没有最近的查询活动,则控制面板上的图形可能为空。根据您在下一步中指定的间隔从 CloudWatch 检索查询活动。
-
在 Metrics(指标)部分中,选择 Athena 应该用于从 CloudWatch 中提取查询指标的指标间隔,或指定自定义间隔。
-
要刷新显示的指标,请选择刷新图标。
-
单击刷新图标旁边的箭头,选择指标显示的更新频率。
要使用 Amazon CloudWatch 控制台查看指标
通过以下网址打开 CloudWatch 控制台:https://console.aws.amazon.com/cloudwatch/
。 -
在导航窗格中,依次选择 Metrics(指标)、All metrics(所有指标)。
-
选择 Amazon/Athena 命名空间。
借助 CLI 查看指标
-
请执行下列操作之一:
-
要列出 Athena 的指标,请打开命令提示符,然后使用以下命令:
aws cloudwatch list-metrics --namespace "AWS/Athena"
-
要列出所有可用的指标,请使用以下命令:
aws cloudwatch list-metrics"
-
Athena 的 CloudWatch 指标与维度列表
如果您在 Athena 中启用了 CloudWatch 指标,则它会按工作组将以下指标发送到 CloudWatch。以下指标使用 AWS/Athena
命名空间。
指标名称 | 描述 |
---|---|
EngineExecutionTime |
运行查询所花费的毫秒数。 |
ProcessedBytes |
Athena 为每个 DML 查询扫描的字节数。对于已取消的查询(由用户取消,或者因为达到限制而自动取消),此指标包含在取消时间之前扫描的数据量。对于 DDL 或 CTAS 查询,不会报告此指标。 |
QueryPlanningTime | Athena 计划查询处理流程所花费的毫秒数。这包括从数据源检索表分区所花费的时间。请注意,由于查询引擎执行查询计划,因此查询计划时间是 EngineExecutionTime 的子集。 |
QueryQueueTime | 查询在查询队列中等待资源所花的毫秒数。请注意,如果发生临时错误,则可以自动将查询添加回队列。 |
ServiceProcessingTime | 查询引擎执行完查询后,Athena 处理查询结果所花费的毫秒数。 |
TotalExecutionTime | Athena 运行 DDL 或 DML 查询所花费的毫秒数。TotalExecutionTime 包括 QueryQueueTime、 QueryPlanningTime、EngineExecutionTime 和 ServiceProcessingTime。 |
Athena 的指标具有以下维度。
维度 | 描述 |
---|---|
QueryState |
查询状态。 有效统计数据:SUCCEEDED(成功)、FAILED(失败)或 CANCELED(已取消)。 |
QueryType |
查询类型。 有效统计数据: |
WorkGroup |
工作组的名称。 |