在 CloudWatch Metrics Insights 中构建查询
您可以使用 CloudWatch 控制台、Amazon CLI 或者 Amazon SDK 来运行 CloudWatch Metrics Insights 查询。在控制台中运行的查询免费。有关 CloudWatch 定价的信息,请参阅 Amazon CloudWatch 定价
借助 CloudWatch Metrics Insights,您可以分析长达两周的指标数据,与较短的保留期相比,可以实现更全面的历史分析和趋势识别。为了在查询较长的时间范围时获得最佳效果,建议采用更大的时间粒度(例如 5 分钟或 1 小时)来减少返回的数据点数。在分析整整两周的趋势时,请在 ORDER BY 子句中使用 AVG() 或 MAX() 之类的聚合函数来有效地识别模式。
有关使用 Amazon SDK 执行 Metrics Insights 查询的更多信息,请参阅 GetMetricData。
要使用 CloudWatch 控制台运行查询,请执行以下步骤:
使用 Metrics Insights 查询指标
-
通过 https://console.aws.amazon.com/cloudwatch/
打开 CloudWatch 控制台。 -
在导航窗格中,依次选择 Metrics(指标)、All metrics(所有指标)。
(可选)要运行预构建的示例查询,请选择 Add query(添加查询),然后选择要运行的查询。如果您对此查询满意,您可以跳过此过程的其余部分。或者,您可以选择 Editor(编辑器)来编辑示例查询,然后选择 Run(运行)以运行修改后的查询。
要创建您自己的查询,请选择多来源查询。您可通过构建器视图(默认视图)获得向导式操作体验;若希望直接编写查询语法,可切换到编辑器视图。您可以随时在两个视图之间切换,并在两个视图中查看正在进行的工作。
在构建器视图中,单击命名空间、指标名称、筛选条件、分组、排序及限制条件对应的输入框,即可浏览并选择可选值。您也可在输入框中输入目标值的任意部分,对构建器展示的候选列表进行筛选。筛选条件和分组的输入框中可引用资源标签。
在编辑器视图中,您可使用 Metrics Insights 支持的 SQL 子集编写查询语句。编辑器会根据您已输入的字符提供自动补全建议,包括支持标签的指标对应的资源标签名称。
CloudWatch Metrics Insights 支持按 Amazon 资源标签查询指标。您可通过标签对指标数据进行筛选和分组,实现更具针对性的监控与分析。
以下示例将演示如何在查询语句中结合标签使用。
查看生产环境中 Amazon EC2 实例的 CPU 利用率:
SELECT MAX(CPUUtilization) FROM SCHEMA("AWS/EC2") WHERE tag.env='prod'使用 GROUP BY 子句按环境维度对指标进行分组:
SELECT MAX(CPUUtilization) FROM SCHEMA("AWS/EC2") GROUP BY tag.env在 GROUP BY 子句中指定标签名的用法:
SELECT AVG(CPUUtilization) FROM "AWS/EC2" GROUP BY tag."aws:cloudformation:stack-name"将标签查询与现有指标维度相结合:
SELECT MAX(CPUUtilization) FROM SCHEMA("AWS/EC2") WHERE tag.env='prod' AND InstanceId='i-1234567890abcdef0'如果对查询感到满意,请选择 Run(运行)。
(可选)编辑已绘制图表查询的另一种方法是选择 Graphed metrics(已绘制图表指标)选项卡,然后选择 Details(详细信息)列中查询公式旁边的编辑图标。
(可选)要从图表中删除查询,请选择 Graphed metrics(已绘制图表指标),然后选择显示查询一行右侧的 X 图标。