本文档仅适用于 Amazon CLI 版本 1。有关 Amazon CLI 版本 2 的相关文档,请参阅版本 2 用户指南。
使用 Amazon CLI 的 CloudWatch 示例
以下代码示例演示了如何通过将 Amazon Command Line Interface与 CloudWatch 结合使用,来执行操作和实现常见场景。
操作是大型程序的代码摘录,必须在上下文中运行。您可以通过操作了解如何调用单个服务函数,还可以通过函数相关场景的上下文查看操作。
每个示例都包含一个指向完整源代码的链接,您可以从中找到有关如何在上下文中设置和运行代码的说明。
主题
操作
以下代码示例演示了如何使用 delete-alarms。
- Amazon CLI
 - 
             
                    
删除警报
以下示例使用
delete-alarms命令删除名为“myalarm”的 Amazon CloudWatch 警报:aws cloudwatch delete-alarms --alarm-namesmyalarm输出:
This command returns to the prompt if successful.- 
                    
有关 API 详细信息,请参阅《Amazon CLI 命令参考》中的 DeleteAlarms
。  
 - 
                    
 
以下代码示例演示了如何使用 delete-anomaly-detector。
- Amazon CLI
 - 
             
                    
删除指定的异常检测模型
以下
delete-anomaly-detector示例删除了指定账户中的异常检测器模型。aws cloudwatch delete-anomaly-detector \ --namespaceAWS/Logs\ --metric-nameIncomingBytes\ --statSampleCount此命令不生成任何输出。
有关更多信息,请参阅《Amazon CloudWatch 用户指南》中的删除异常检测模型。
- 
                    
有关 API 详细信息,请参阅《Amazon CLI Command Reference》中的 DeleteAnomalyDetector
。  
 - 
                    
 
以下代码示例演示了如何使用 delete-dashboards。
- Amazon CLI
 - 
             
                    
删除指定的控制面板
以下
delete-dashboards示例删除了指定账户中名为Dashboard-A和Dashboard-B的两个控制面板。aws cloudwatch delete-dashboards \ --dashboard-namesDashboard-ADashboard-B此命令不生成任何输出。
有关更多信息,请参阅《Amazon CloudWatch 用户指南》中的使用 Amazon CloudWatch 控制面板。
- 
                    
有关 API 详细信息,请参阅《Amazon CLI Command Reference》中的 DeleteDashboards
。  
 - 
                    
 
以下代码示例演示了如何使用 delete-insight-rules。
- Amazon CLI
 - 
             
                    
删除指定的 Contributor Insights 规则
以下
delete-insight-rules示例删除指定账户中两个分别名为Rule-A和Rule-B的 Contributor Insights 规则。aws cloudwatch delete-insight-rules \ --rule-namesRule-ARule-B输出:
{ "Failures": [] }有关更多信息,请参阅《Amazon CloudWatch 用户指南》中的使用 Contributor Insights 分析高基数数据。
- 
                    
有关 API 详细信息,请参阅《Amazon CLI Command Reference》中的 DeleteInsightRules
。  
 - 
                    
 
以下代码示例演示了如何使用 delete-metric-stream。
- Amazon CLI
 - 
             
                    
删除指定的指标流
以下
delete-metric-stream示例删除指定账户中名为QuickPartial-gSCKvO的指标流。aws cloudwatch delete-metric-stream \ --nameQuickPartial-gSCKvO此命令不生成任何输出。
有关更多信息,请参阅《Amazon CloudWatch 用户指南》中的使用指标流。
- 
                    
有关 API 详细信息,请参阅《Amazon CLI Command Reference》中的 DeleteMetricStream
。  
 - 
                    
 
以下代码示例演示了如何使用 describe-alarm-history。
- Amazon CLI
 - 
             
                    
检索警报的历史记录
以下示例使用
describe-alarm-history命令检索名为“myalarm”的 Amazon CloudWatch 警报的历史记录:aws cloudwatch describe-alarm-history --alarm-name"myalarm"--history-item-typeStateUpdate输出:
{ "AlarmHistoryItems": [ { "Timestamp": "2014-04-09T18:59:06.442Z", "HistoryItemType": "StateUpdate", "AlarmName": "myalarm", "HistoryData": "{\"version\":\"1.0\",\"oldState\":{\"stateValue\":\"ALARM\",\"stateReason\":\"testing purposes\"},\"newState\":{\"stateValue\":\"OK\",\"stateReason\":\"Threshold Crossed: 2 datapoints were not greater than the threshold (70.0). The most recent datapoints: [38.958, 40.292].\",\"stateReasonData\":{\"version\":\"1.0\",\"queryDate\":\"2014-04-09T18:59:06.419+0000\",\"startDate\":\"2014-04-09T18:44:00.000+0000\",\"statistic\":\"Average\",\"period\":300,\"recentDatapoints\":[38.958,40.292],\"threshold\":70.0}}}", "HistorySummary": "Alarm updated from ALARM to OK" }, { "Timestamp": "2014-04-09T18:59:05.805Z", "HistoryItemType": "StateUpdate", "AlarmName": "myalarm", "HistoryData": "{\"version\":\"1.0\",\"oldState\":{\"stateValue\":\"OK\",\"stateReason\":\"Threshold Crossed: 2 datapoints were not greater than the threshold (70.0). The most recent datapoints: [38.839999999999996, 39.714].\",\"stateReasonData\":{\"version\":\"1.0\",\"queryDate\":\"2014-03-11T22:45:41.569+0000\",\"startDate\":\"2014-03-11T22:30:00.000+0000\",\"statistic\":\"Average\",\"period\":300,\"recentDatapoints\":[38.839999999999996,39.714],\"threshold\":70.0}},\"newState\":{\"stateValue\":\"ALARM\",\"stateReason\":\"testing purposes\"}}", "HistorySummary": "Alarm updated from OK to ALARM" } ] }- 
                    
有关 API 详细信息,请参阅《Amazon CLI 命令参考》中的 DescribeAlarmHistory
。  
 - 
                    
 
以下代码示例演示了如何使用 describe-alarms-for-metric。
- Amazon CLI
 - 
             
                    
显示与指标关联的警报的相关信息
以下示例使用
describe-alarms-for-metric命令显示与 Amazon EC2 CPUUtilization 指标和 ID 为 i-0c986c72 的实例关联的任何警报的相关信息:aws cloudwatch describe-alarms-for-metric --metric-nameCPUUtilization--namespaceAWS/EC2--dimensionsName=InstanceId,Value=i-0c986c72输出:
{ "MetricAlarms": [ { "EvaluationPeriods": 10, "AlarmArn": "arn:aws:cloudwatch:us-east-1:111122223333:alarm:myHighCpuAlarm2", "StateUpdatedTimestamp": "2013-10-30T03:03:51.479Z", "AlarmConfigurationUpdatedTimestamp": "2013-10-30T03:03:50.865Z", "ComparisonOperator": "GreaterThanOrEqualToThreshold", "AlarmActions": [ "arn:aws:sns:us-east-1:111122223333:NotifyMe" ], "Namespace": "AWS/EC2", "AlarmDescription": "CPU usage exceeds 70 percent", "StateReasonData": "{\"version\":\"1.0\",\"queryDate\":\"2013-10-30T03:03:51.479+0000\",\"startDate\":\"2013-10-30T02:08:00.000+0000\",\"statistic\":\"Average\",\"period\":300,\"recentDatapoints\":[40.698,39.612,42.432,39.796,38.816,42.28,42.854,40.088,40.760000000000005,41.316],\"threshold\":70.0}", "Period": 300, "StateValue": "OK", "Threshold": 70.0, "AlarmName": "myHighCpuAlarm2", "Dimensions": [ { "Name": "InstanceId", "Value": "i-0c986c72" } ], "Statistic": "Average", "StateReason": "Threshold Crossed: 10 datapoints were not greater than or equal to the threshold (70.0). The most recent datapoints: [40.760000000000005, 41.316].", "InsufficientDataActions": [], "OKActions": [], "ActionsEnabled": true, "MetricName": "CPUUtilization" }, { "EvaluationPeriods": 2, "AlarmArn": "arn:aws:cloudwatch:us-east-1:111122223333:alarm:myHighCpuAlarm", "StateUpdatedTimestamp": "2014-04-09T18:59:06.442Z", "AlarmConfigurationUpdatedTimestamp": "2014-04-09T22:26:05.958Z", "ComparisonOperator": "GreaterThanThreshold", "AlarmActions": [ "arn:aws:sns:us-east-1:111122223333:HighCPUAlarm" ], "Namespace": "AWS/EC2", "AlarmDescription": "CPU usage exceeds 70 percent", "StateReasonData": "{\"version\":\"1.0\",\"queryDate\":\"2014-04-09T18:59:06.419+0000\",\"startDate\":\"2014-04-09T18:44:00.000+0000\",\"statistic\":\"Average\",\"period\":300,\"recentDatapoints\":[38.958,40.292],\"threshold\":70.0}", "Period": 300, "StateValue": "OK", "Threshold": 70.0, "AlarmName": "myHighCpuAlarm", "Dimensions": [ { "Name": "InstanceId", "Value": "i-0c986c72" } ], "Statistic": "Average", "StateReason": "Threshold Crossed: 2 datapoints were not greater than the threshold (70.0). The most recent datapoints: [38.958, 40.292].", "InsufficientDataActions": [], "OKActions": [], "ActionsEnabled": false, "MetricName": "CPUUtilization" } ] }- 
                    
有关 API 详细信息,请参阅《Amazon CLI 命令参考》中的 DescribeAlarmsForMetric
。  
 - 
                    
 
以下代码示例演示了如何使用 describe-alarms。
- Amazon CLI
 - 
             
                    
列出有关警报的信息
以下示例使用
describe-alarms命令提供名为“myalarm”的警报的相关信息:aws cloudwatch describe-alarms --alarm-names"myalarm"输出:
{ "MetricAlarms": [ { "EvaluationPeriods": 2, "AlarmArn": "arn:aws:cloudwatch:us-east-1:123456789012:alarm:myalarm", "StateUpdatedTimestamp": "2014-04-09T18:59:06.442Z", "AlarmConfigurationUpdatedTimestamp": "2012-12-27T00:49:54.032Z", "ComparisonOperator": "GreaterThanThreshold", "AlarmActions": [ "arn:aws:sns:us-east-1:123456789012:myHighCpuAlarm" ], "Namespace": "AWS/EC2", "AlarmDescription": "CPU usage exceeds 70 percent", "StateReasonData": "{\"version\":\"1.0\",\"queryDate\":\"2014-04-09T18:59:06.419+0000\",\"startDate\":\"2014-04-09T18:44:00.000+0000\",\"statistic\":\"Average\",\"period\":300,\"recentDatapoints\":[38.958,40.292],\"threshold\":70.0}", "Period": 300, "StateValue": "OK", "Threshold": 70.0, "AlarmName": "myalarm", "Dimensions": [ { "Name": "InstanceId", "Value": "i-0c986c72" } ], "Statistic": "Average", "StateReason": "Threshold Crossed: 2 datapoints were not greater than the threshold (70.0). The most recent datapoints: [38.958, 40.292].", "InsufficientDataActions": [], "OKActions": [], "ActionsEnabled": true, "MetricName": "CPUUtilization" } ] }- 
                    
有关 API 详细信息,请参阅《Amazon CLI 命令参考》中的 DescribeAlarms
。  
 - 
                    
 
以下代码示例演示了如何使用 describe-anomaly-detectors。
- Amazon CLI
 - 
             
                    
检索异常检测模型的列表
以下
describe-anomaly-detectors示例显示了有关与指定账户中AWS/Logs命名空间关联的异常检测器模型的信息。aws cloudwatch describe-anomaly-detectors \ --namespaceAWS/Logs输出:
{ "AnomalyDetectors": [ { "Namespace": "AWS/Logs", "MetricName": "IncomingBytes", "Dimensions": [], "Stat": "SampleCount", "Configuration": { "ExcludedTimeRanges": [] }, "StateValue": "TRAINED", "SingleMetricAnomalyDetector": { "AccountId": "123456789012", "Namespace": "AWS/Logs", "MetricName": "IncomingBytes", "Dimensions": [], "Stat": "SampleCount" } }, { "Namespace": "AWS/Logs", "MetricName": "IncomingBytes", "Dimensions": [ { "Name": "LogGroupName", "Value": "demo" } ], "Stat": "Average", "Configuration": { "ExcludedTimeRanges": [] }, "StateValue": "PENDING_TRAINING", "SingleMetricAnomalyDetector": { "AccountId": "123456789012", "Namespace": "AWS/Logs", "MetricName": "IncomingBytes", "Dimensions": [ { "Name": "LogGroupName", "Value": "demo" } ], "Stat": "Average" } } ] }有关更多信息,请参阅《Amazon CloudWatch 用户指南中》的使用 CloudWatch 异常检测。
- 
                    
有关 API 详细信息,请参阅《Amazon CLI Command Reference》中的 DescribeAnomalyDetectors
。  
 - 
                    
 
以下代码示例演示了如何使用 describe-insight-rules。
- Amazon CLI
 - 
             
                    
检索 Contributor Insights 规则列表
以下
describe-insight-rules示例显示指定账户中的所有 Contributor Insights 规则。aws cloudwatch describe-insight-rules输出:
{ "InsightRules": [ { "Name": "Rule-A", "State": "ENABLED", "Schema": "CloudWatchLogRule/1", "Definition": "{\n\t\"AggregateOn\": \"Count\",\n\t\"Contribution\": {\n\t\t\"Filters\": [],\n\t\t\"Keys\": [\n\t\t\t\"$.requestId\"\n\t\t]\n\t},\n\t\"LogFormat\": \"JSON\",\n\t\"Schema\": {\n\t\t\"Name\": \"CloudWatchLogRule\",\n\t\t\"Version\": 1\n\t},\n\t\"LogGroupARNs\": [\n\t\t\"arn:aws:logs:us-east-1:123456789012:log-group:demo\"\n\t]\n}", "ManagedRule": false }, { "Name": "Rule-B", "State": "ENABLED", "Schema": "CloudWatchLogRule/1", "Definition": "{\n\t\"AggregateOn\": \"Count\",\n\t\"Contribution\": {\n\t\t\"Filters\": [],\n\t\t\"Keys\": [\n\t\t\t\"$.requestId\"\n\t\t]\n\t},\n\t\"LogFormat\": \"JSON\",\n\t\"Schema\": {\n\t\t\"Name\": \"CloudWatchLogRule\",\n\t\t\"Version\": 1\n\t},\n\t\"LogGroupARNs\": [\n\t\t\"arn:aws:logs:us-east-1:123456789012:log-group:demo-1\"\n\t]\n}", "ManagedRule": false } ] }有关更多信息,请参阅《Amazon CloudWatch 用户指南》中的使用 Contributor Insights 分析高基数数据。
- 
                    
有关 API 详细信息,请参阅《Amazon CLI Command Reference》中的 DescribeInsightRules
。  
 - 
                    
 
以下代码示例演示了如何使用 disable-alarm-actions。
- Amazon CLI
 - 
             
                    
禁用警报的操作
以下示例使用
disable-alarm-actions命令禁用名为 myalarm 的警报的所有操作:aws cloudwatch disable-alarm-actions --alarm-namesmyalarm如果成功,该命令将返回到提示符。
- 
                    
有关 API 详细信息,请参阅《Amazon CLI 命令参考》中的 DisableAlarmActions
。  
 - 
                    
 
以下代码示例演示了如何使用 disable-insight-rules。
- Amazon CLI
 - 
             
                    
禁用指定的 Contributor Insights 规则
以下
disable-insight-rules示例禁用指定账户中两个分别名为Rule-A和Rule-B的 Contributor Insights 规则。aws cloudwatch disable-insight-rules \ --rule-namesRule-ARule-B输出:
{ "Failures": [] }有关更多信息,请参阅《Amazon CloudWatch 用户指南》中的使用 Contributor Insights 分析高基数数据。
- 
                    
有关 API 详细信息,请参阅《Amazon CLI Command Reference》中的 DisableInsightRules
。  
 - 
                    
 
以下代码示例演示了如何使用 enable-alarm-actions。
- Amazon CLI
 - 
             
                    
启用警报的所有操作
以下示例使用
enable-alarm-actions命令启用名为 myalarm 的警报的所有操作:aws cloudwatch enable-alarm-actions --alarm-namesmyalarm如果成功,该命令将返回到提示符。
- 
                    
有关 API 详细信息,请参阅《Amazon CLI 命令参考》中的 EnableAlarmActions
。  
 - 
                    
 
以下代码示例演示了如何使用 enable-insight-rules。
- Amazon CLI
 - 
             
                    
启用指定的 Contributor Insights 规则
以下
enable-insight-rules示例启用指定账户中两个分别名为Rule-A和Rule-B的 Contributor Insights 规则。aws cloudwatch enable-insight-rules \ --rule-namesRule-ARule-B输出:
{ "Failures": [] }有关更多信息,请参阅《Amazon CloudWatch 用户指南》中的使用 Contributor Insights 分析高基数数据。
- 
                    
有关 API 详细信息,请参阅《Amazon CLI Command Reference》中的 EnableInsightRules
。  
 - 
                    
 
以下代码示例演示了如何使用 get-dashboard。
- Amazon CLI
 - 
             
                    
检索有关控制面板的信息
以下
get-dashboard示例显示了有关指定账户中名为Dashboard-A的控制面板的信息。aws cloudwatch get-dashboard \ --dashboard-nameDashboard-A输出:
{ "DashboardArn": "arn:aws:cloudwatch::123456789012:dashboard/Dashboard-A", "DashboardBody": "{\"widgets\":[{\"type\":\"metric\",\"x\":0,\"y\":0,\"width\":6,\"height\":6,\"properties\":{\"view\":\"timeSeries\",\"stacked\":false,\"metrics\":[[\"AWS/EC2\",\"NetworkIn\",\"InstanceId\",\"i-0131f062232ade043\"],[\".\",\"NetworkOut\",\".\",\".\"]],\"region\":\"us-east-1\"}}]}", "DashboardName": "Dashboard-A" }有关更多信息,请参阅《Amazon CloudWatch 用户指南》中的使用 Amazon CloudWatch 控制面板。
- 
                    
有关 API 详细信息,请参阅《Amazon CLI Command Reference》中的 GetDashboard
。  
 - 
                    
 
以下代码示例演示了如何使用 get-insight-rule-report。
- Amazon CLI
 - 
             
                    
检索 Contributor Insights 规则收集的时间序列数据
以下
get-insight-rule-report示例返回 Contributor Insights 规则收集的时间序列数据。aws cloudwatch get-insight-rule-report \ --rule-nameRule-A\ --start-time2024-10-13T20:15:00Z\ --end-time2024-10-13T20:30:00Z\ --period300输出:
{ "KeyLabels": [ "PartitionKey" ], "AggregationStatistic": "Sum", "AggregateValue": 0.5, "ApproximateUniqueCount": 1, "Contributors": [ { "Keys": [ "RequestID" ], "ApproximateAggregateValue": 0.5, "Datapoints": [ { "Timestamp": "2024-10-13T21:00:00+00:00", "ApproximateValue": 0.5 } ] } ], "RuleAttributes": [] }有关更多信息,请参阅《Amazon CloudWatch 用户指南》中的使用 Contributor Insights 分析高基数数据。
- 
                    
有关 API 详细信息,请参阅《Amazon CLI Command Reference》中的 GetInsightRuleReport
。  
 - 
                    
 
以下代码示例演示了如何使用 get-metric-data。
- Amazon CLI
 - 
             
                    
示例 1:使用数学表达式获取指定 EC2 的平均总 IOPS
以下
get-metric-data示例使用组合EBSReadOps和EBSWriteOps指标的指标数学表达式检索 InstanceID 为i-abcdef的 EC2 实例 CloudWatch 指标值。aws cloudwatch get-metric-data \ --metric-data-queriesfile://file.json\ --start-time2024-09-29T22:10:00Z\ --end-time2024-09-29T22:15:00Zfile.json的内容:[ { "Id": "m3", "Expression": "(m1+m2)/300", "Label": "Avg Total IOPS" }, { "Id": "m1", "MetricStat": { "Metric": { "Namespace": "AWS/EC2", "MetricName": "EBSReadOps", "Dimensions": [ { "Name": "InstanceId", "Value": "i-abcdef" } ] }, "Period": 300, "Stat": "Sum", "Unit": "Count" }, "ReturnData": false }, { "Id": "m2", "MetricStat": { "Metric": { "Namespace": "AWS/EC2", "MetricName": "EBSWriteOps", "Dimensions": [ { "Name": "InstanceId", "Value": "i-abcdef" } ] }, "Period": 300, "Stat": "Sum", "Unit": "Count" }, "ReturnData": false } ]输出:
{ "MetricDataResults": [ { "Id": "m3", "Label": "Avg Total IOPS", "Timestamps": [ "2024-09-29T22:10:00+00:00" ], "Values": [ 96.85 ], "StatusCode": "Complete" } ], "Messages": [] }示例 2:使用 CloudWatch 账单指标监控预估 Amazon 费用
以下
get-metric-data示例从 Amazon/Billing 命名空间检索EstimatedChargesCloudWatch 指标。aws cloudwatch get-metric-data \ --metric-data-queries '[{"Id":"m1","MetricStat":{"Metric":{"Namespace":"AWS/Billing","MetricName":"EstimatedCharges","Dimensions":[{"Name":"Currency","Value":"USD"}]},"Period":21600,"Stat":"Maximum"}}]' \ --start-time2024-09-26T12:00:00Z\ --end-time2024-09-26T18:00:00Z\ --regionus-east-1输出:
{ "MetricDataResults": [ { "Id": "m1", "Label": "EstimatedCharges", "Timestamps": [ "2024-09-26T12:00:00+00:00" ], "Values": [ 542.38 ], "StatusCode": "Complete" } ], "Messages": [] }有关更多信息,请参阅《Amazon CloudWatch 用户指南》中的将数学表达式与 CloudWatch 指标结合使用。
- 
                    
有关 API 详细信息,请参阅《Amazon CLI Command Reference》中的 GetMetricData
。  
 - 
                    
 
以下代码示例演示了如何使用 get-metric-statistics。
- Amazon CLI
 - 
             
                    
获取每个 EC2 实例的 CPU 利用率
以下示例使用
get-metric-statistics命令获取 ID 为 i-abcdef 的 EC2 实例的 CPU 利用率。aws cloudwatch get-metric-statistics --metric-nameCPUUtilization--start-time2014-04-08T23:18:00Z--end-time2014-04-09T23:18:00Z--period3600--namespaceAWS/EC2--statisticsMaximum--dimensionsName=InstanceId,Value=i-abcdef输出:
{ "Datapoints": [ { "Timestamp": "2014-04-09T11:18:00Z", "Maximum": 44.79, "Unit": "Percent" }, { "Timestamp": "2014-04-09T20:18:00Z", "Maximum": 47.92, "Unit": "Percent" }, { "Timestamp": "2014-04-09T19:18:00Z", "Maximum": 50.85, "Unit": "Percent" }, { "Timestamp": "2014-04-09T09:18:00Z", "Maximum": 47.92, "Unit": "Percent" }, { "Timestamp": "2014-04-09T03:18:00Z", "Maximum": 76.84, "Unit": "Percent" }, { "Timestamp": "2014-04-09T21:18:00Z", "Maximum": 48.96, "Unit": "Percent" }, { "Timestamp": "2014-04-09T14:18:00Z", "Maximum": 47.92, "Unit": "Percent" }, { "Timestamp": "2014-04-09T08:18:00Z", "Maximum": 47.92, "Unit": "Percent" }, { "Timestamp": "2014-04-09T16:18:00Z", "Maximum": 45.55, "Unit": "Percent" }, { "Timestamp": "2014-04-09T06:18:00Z", "Maximum": 47.92, "Unit": "Percent" }, { "Timestamp": "2014-04-09T13:18:00Z", "Maximum": 45.08, "Unit": "Percent" }, { "Timestamp": "2014-04-09T05:18:00Z", "Maximum": 47.92, "Unit": "Percent" }, { "Timestamp": "2014-04-09T18:18:00Z", "Maximum": 46.88, "Unit": "Percent" }, { "Timestamp": "2014-04-09T17:18:00Z", "Maximum": 52.08, "Unit": "Percent" }, { "Timestamp": "2014-04-09T07:18:00Z", "Maximum": 47.92, "Unit": "Percent" }, { "Timestamp": "2014-04-09T02:18:00Z", "Maximum": 51.23, "Unit": "Percent" }, { "Timestamp": "2014-04-09T12:18:00Z", "Maximum": 47.67, "Unit": "Percent" }, { "Timestamp": "2014-04-08T23:18:00Z", "Maximum": 46.88, "Unit": "Percent" }, { "Timestamp": "2014-04-09T10:18:00Z", "Maximum": 51.91, "Unit": "Percent" }, { "Timestamp": "2014-04-09T04:18:00Z", "Maximum": 47.13, "Unit": "Percent" }, { "Timestamp": "2014-04-09T15:18:00Z", "Maximum": 48.96, "Unit": "Percent" }, { "Timestamp": "2014-04-09T00:18:00Z", "Maximum": 48.16, "Unit": "Percent" }, { "Timestamp": "2014-04-09T01:18:00Z", "Maximum": 49.18, "Unit": "Percent" } ], "Label": "CPUUtilization" }指定多个维度
以下示例说明如何指定多个维度。每个维度都指定为一个“名称/值”对,名称和值之间用逗号隔开。多个维度之间用空格隔开。如果单个指标包含多个维度,则必须为每个已定义的维度指定一个值。
有关使用
get-metric-statistics命令的更多示例,请参阅《Amazon CloudWatch 开发人员指南》中的“获取指标的统计数据”。aws cloudwatch get-metric-statistics --metric-nameBuffers--namespaceMyNameSpace--dimensionsName=InstanceID,Value=i-abcdefName=InstanceType,Value=m1.small--start-time2016-10-15T04:00:00Z--end-time2016-10-19T07:00:00Z--statisticsAverage--period60- 
                    
有关 API 详细信息,请参阅《Amazon CLI 命令参考》中的 GetMetricStatistics
。  
 - 
                    
 
以下代码示例演示了如何使用 get-metric-stream。
- Amazon CLI
 - 
             
                    
检索有关指标流的信息
以下
get-metric-stream示例显示有关指定账户中名为QuickFull-GuaFbs的指标流的信息。aws cloudwatch get-metric-stream \ --nameQuickFull-GuaFbs输出:
{ "Arn": "arn:aws:cloudwatch:us-east-1:123456789012:metric-stream/QuickFull-GuaFbs", "Name": "QuickFull-GuaFbs", "FirehoseArn": "arn:aws:firehose:us-east-1:123456789012:deliverystream/MetricStreams-QuickFull-GuaFbs-WnySbECG", "RoleArn": "arn:aws:iam::123456789012:role/service-role/MetricStreams-FirehosePutRecords-JN10W9B3", "State": "running", "CreationDate": "2024-10-11T18:48:59.187000+00:00", "LastUpdateDate": "2024-10-11T18:48:59.187000+00:00", "OutputFormat": "json", "IncludeLinkedAccountsMetrics": false }有关更多信息,请参阅《Amazon CloudWatch 用户指南》中的使用指标流。
- 
                    
有关 API 详细信息,请参阅《Amazon CLI Command Reference》中的 GetMetricStream
。  
 - 
                    
 
以下代码示例演示了如何使用 get-metric-widget-image。
- Amazon CLI
 - 
             
                    
检索 CPUUtilization 的快照图
以下
get-metric-widget-image示例检索 ID 为i-abcde的 EC2 实例的指标CPUUtilization快照图,并将检索到的图像保存为本地计算机上名为“image.png”的文件。aws cloudwatch get-metric-widget-image \ --metric-widget '{"metrics":[["AWS/EC2","CPUUtilization","InstanceId","i-abcde"]]}' \ --output-formatpng\ --outputtext|base64--decode>image.png此命令不生成任何输出。
- 
                    
有关 API 详细信息,请参阅《Amazon CLI Command Reference》中的 GetMetricWidgetImage
。  
 - 
                    
 
以下代码示例演示了如何使用 list-dashboards。
- Amazon CLI
 - 
             
                    
检索控制面板的列表
以下
list-dashboards示例列出了指定账户中的所有控制面板。aws cloudwatch list-dashboards输出:
{ "DashboardEntries": [ { "DashboardName": "Dashboard-A", "DashboardArn": "arn:aws:cloudwatch::123456789012:dashboard/Dashboard-A", "LastModified": "2024-10-11T18:40:11+00:00", "Size": 271 }, { "DashboardName": "Dashboard-B", "DashboardArn": "arn:aws:cloudwatch::123456789012:dashboard/Dashboard-B", "LastModified": "2024-10-11T18:44:41+00:00", "Size": 522 } ] }有关更多信息,请参阅《Amazon CloudWatch 用户指南》中的使用 Amazon CloudWatch 控制面板。
- 
                    
有关 API 详细信息,请参阅《Amazon CLI 命令参考》中的 ListDashboards
。  
 - 
                    
 
以下代码示例演示了如何使用 list-metric-streams。
- Amazon CLI
 - 
             
                    
检索指标流列表
以下
list-metric-streams示例列出指定账户中的所有指标流。aws cloudwatch list-metric-streams输出:
{ "Entries": [ { "Arn": "arn:aws:cloudwatch:us-east-1:123456789012:metric-stream/QuickFull-GuaFbs", "CreationDate": "2024-10-11T18:48:59.187000+00:00", "LastUpdateDate": "2024-10-11T18:48:59.187000+00:00", "Name": "QuickFull-GuaFbs", "FirehoseArn": "arn:aws:firehose:us-east-1:123456789012:deliverystream/MetricStreams-QuickFull-GuaFbs-WnySbECG", "State": "running", "OutputFormat": "json" } ] }有关更多信息,请参阅《Amazon CloudWatch 用户指南》中的使用指标流。
- 
                    
有关 API 详细信息,请参阅《Amazon CLI Command Reference》中的 ListMetricStreams
。  
 - 
                    
 
以下代码示例演示了如何使用 list-metrics。
- Amazon CLI
 - 
             
                    
列出 Amazon SNS 的指标
以下
list-metrics示例显示 Amazon SNS 的指标。aws cloudwatch list-metrics \ --namespace"AWS/SNS"输出:
{ "Metrics": [ { "Namespace": "AWS/SNS", "Dimensions": [ { "Name": "TopicName", "Value": "NotifyMe" } ], "MetricName": "PublishSize" }, { "Namespace": "AWS/SNS", "Dimensions": [ { "Name": "TopicName", "Value": "CFO" } ], "MetricName": "PublishSize" }, { "Namespace": "AWS/SNS", "Dimensions": [ { "Name": "TopicName", "Value": "NotifyMe" } ], "MetricName": "NumberOfNotificationsFailed" }, { "Namespace": "AWS/SNS", "Dimensions": [ { "Name": "TopicName", "Value": "NotifyMe" } ], "MetricName": "NumberOfNotificationsDelivered" }, { "Namespace": "AWS/SNS", "Dimensions": [ { "Name": "TopicName", "Value": "NotifyMe" } ], "MetricName": "NumberOfMessagesPublished" }, { "Namespace": "AWS/SNS", "Dimensions": [ { "Name": "TopicName", "Value": "CFO" } ], "MetricName": "NumberOfMessagesPublished" }, { "Namespace": "AWS/SNS", "Dimensions": [ { "Name": "TopicName", "Value": "CFO" } ], "MetricName": "NumberOfNotificationsDelivered" }, { "Namespace": "AWS/SNS", "Dimensions": [ { "Name": "TopicName", "Value": "CFO" } ], "MetricName": "NumberOfNotificationsFailed" } ] }- 
                    
有关 API 详细信息,请参阅《Amazon CLI 命令参考》中的 ListMetrics
。  
 - 
                    
 
以下代码示例演示了如何使用 list-tags-for-resource。
- Amazon CLI
 - 
             
                    
列出与现有警报关联的标签*
以下
list-tags-for-resource示例列出与指定账户中名为demo的警报关联的所有标签。aws cloudwatch list-tags-for-resource \ --resource-arnarn:aws:cloudwatch:us-east-1:123456789012:alarm:demo输出:
{ "Tags": [ { "Key": "stack", "Value": "Production" }, { "Key": "team", "Value": "Devops" } ] }有关更多信息,请参阅《Amazon CloudWatch 用户指南》中的警报和标记。
- 
                    
有关 API 详细信息,请参阅《Amazon CLI 命令参考》中的 ListTagsForResource
。  
 - 
                    
 
以下代码示例演示了如何使用 put-anomaly-detector。
- Amazon CLI
 - 
             
                    
创建异常检测模型
以下
put-anomaly-detector示例为 CloudWatch 指标创建了异常检测模型。aws cloudwatch put-anomaly-detector \ --namespaceAWS/Logs\ --metric-nameIncomingBytes\ --statSampleCount此命令不生成任何输出。
有关更多信息,请参阅《Amazon CloudWatch 用户指南中》的使用 CloudWatch 异常检测。
- 
                    
有关 API 详细信息,请参阅《Amazon CLI Command Reference》中的 PutAnomalyDetector
。  
 - 
                    
 
以下代码示例演示了如何使用 put-composite-alarm。
- Amazon CLI
 - 
             
                    
创建复合 CloudWatch 警报
以下
put-composite-alarm示例在指定账户中创建名为ProdAlarm的复合警报。aws cloudwatch put-composite-alarm \ --alarm-nameProdAlarm\ --alarm-rule"ALARM(CPUUtilizationTooHigh) AND ALARM(MemUsageTooHigh)"\ --alarm-actionsarn:aws:sns:us-east-1:123456789012:demo\ --actions-enabled此命令不生成任何输出。
有关更多信息,请参阅《Amazon CloudWatch 用户指南》中的创建复合警报。
- 
                    
有关 API 详细信息,请参阅《Amazon CLI Command Reference》中的 PutCompositeAlarm
。  
 - 
                    
 
以下代码示例演示了如何使用 put-dashboard。
- Amazon CLI
 - 
             
                    
创建仪表板
以下
put-dashboard示例在指定账户中创建了名为Dashboard-A的控制面板。aws cloudwatch put-dashboard \ --dashboard-nameDashboard-A\ --dashboard-body '{"widgets":[{"height":6,"width":6,"y":0,"x":0,"type":"metric","properties":{"view":"timeSeries","stacked":false,"metrics":[["Namespace","CPUUtilization","Environment","Prod","Type","App"]],"region":"us-east-1"}}]}'输出:
{ "DashboardValidationMessages": [] }有关更多信息,请参阅《Amazon CloudWatch 用户指南》中的创建 Amazon CloudWatch 控制面板。
- 
                    
有关 API 详细信息,请参阅《Amazon CLI Command Reference》中的 PutDashboard
。  
 - 
                    
 
以下代码示例演示了如何使用 put-insight-rule。
- Amazon CLI
 - 
             
                    
创建 Contributor Insights 规则
以下
put-insight-rule示例在指定账户中创建名为VPCFlowLogsContributorInsights的 Contributor Insights 规则。aws cloudwatch put-insight-rule \ --rule-nameVPCFlowLogsContributorInsights\ --rule-definitionfile://insight-rule.json\ --rule-stateENABLEDinsight-rule.json的内容:{ "Schema": { "Name": "CloudWatchLogRule", "Version": 1 }, "AggregateOn": "Count", "Contribution": { "Filters": [], "Keys": [ "tcp-flag" ] }, "LogFormat": "CLF", "LogGroupNames": [ "/vpc/flowlogs/*" ], "Fields": { "23": "tcp-flag" } }此命令不生成任何输出。
有关更多信息,请参阅《Amazon CloudWatch 用户指南》中的在 CloudWatch 中创建 Contributor Insights 规则。
- 
                    
有关 API 详细信息,请参阅《Amazon CLI Command Reference》中的 PutInsightRule
。  
 - 
                    
 
以下代码示例演示了如何使用 put-metric-alarm。
- Amazon CLI
 - 
             
                    
在 CPU 利用率超过 70% 时发送 Amazon Simple Notification Service 电子邮件消息
以下示例使用
put-metric-alarm命令在 CPU 利用率超过 70% 时发送 Amazon Simple Notification Service 电子邮件消息:aws cloudwatch put-metric-alarm --alarm-namecpu-mon--alarm-description"Alarm when CPU exceeds 70 percent"--metric-nameCPUUtilization--namespaceAWS/EC2--statisticAverage--period300--threshold70--comparison-operatorGreaterThanThreshold--dimensions"Name=InstanceId,Value=i-12345678"--evaluation-periods2--alarm-actionsarn:aws:sns:us-east-1:111122223333:MyTopic--unitPercent如果成功,该命令将返回到提示符。如果已存在同名警报,则该警报将被新警报覆盖。
指定多个维度
以下示例说明了如何指定多个维度。每个维度都指定为一个“名称/值”对,名称和值之间用逗号隔开。多个维度之间用空格隔开:
aws cloudwatch put-metric-alarm --alarm-name"Default_Test_Alarm3"--alarm-description"The default example alarm"--namespace"CW EXAMPLE METRICS"--metric-nameDefault_Test--statisticAverage--period60--evaluation-periods3--threshold50--comparison-operatorGreaterThanOrEqualToThreshold--dimensionsName=key1,Value=value1Name=key2,Value=value2- 
                    
有关 API 详细信息,请参阅《Amazon CLI 命令参考》中的 PutMetricAlarm
。  
 - 
                    
 
以下代码示例演示了如何使用 put-metric-data。
- Amazon CLI
 - 
             
                    
向 Amazon CloudWatch 发布自定义指标
以下示例使用
put-metric-data命令向 Amazon CloudWatch 发布自定义指标:aws cloudwatch put-metric-data --namespace"Usage Metrics"--metric-datafile://metric.json指标本身的值存储在 JSON 文件
metric.json中。以下是该文件的内容:
[ { "MetricName": "New Posts", "Timestamp": "Wednesday, June 12, 2013 8:28:20 PM", "Value": 0.50, "Unit": "Count" } ]有关更多信息,请参阅《Amazon CloudWatch 开发人员指南》中的“发布自定义指标”。
指定多个维度
以下示例说明了如何指定多个维度。每个维度都指定为一个 Name=Value 对。多个维度之间用逗号隔开:
aws cloudwatch put-metric-data --metric-nameBuffers--namespaceMyNameSpace--unitBytes--value231434333--dimensionsInstanceID=1-23456789,InstanceType=m1.small- 
                    
有关 API 详细信息,请参阅《Amazon CLI 命令参考》中的 PutMetricData
。  
 - 
                    
 
以下代码示例演示了如何使用 put-metric-stream。
- Amazon CLI
 - 
             
                    
创建指标流
以下
put-metric-stream示例在指定账户中创建名为QuickFull-GuaFb的指标流。aws cloudwatch put-metric-stream \ --nameQuickFull-GuaFbs\ --firehose-arnarn:aws:firehose:us-east-1:123456789012:deliverystream/MetricStreams-QuickFull-GuaFbs-WnySbECG\ --role-arnarn:aws:iam::123456789012:role/service-role/MetricStreams-FirehosePutRecords-JN10W9B3\ --output-formatjson\ --no-include-linked-accounts-metrics输出:
{ "Arn": "arn:aws:cloudwatch:us-east-1:123456789012:metric-stream/QuickFull-GuaFbs" }有关更多信息,请参阅《Amazon CloudWatch 用户指南》中的设置指标流。
- 
                    
有关 API 详细信息,请参阅《Amazon CLI Command Reference》中的 PutMetricStream
。  
 - 
                    
 
以下代码示例演示了如何使用 set-alarm-state。
- Amazon CLI
 - 
             
                    
暂时更改警报的状态
以下示例使用
set-alarm-state命令暂时更改名为“myalarm”的 Amazon CloudWatch 警报的状态,并将其设置为 ALARM 状态以进行测试:aws cloudwatch set-alarm-state --alarm-name"myalarm"--state-valueALARM--state-reason"testing purposes"如果成功,该命令将返回到提示符。
- 
                    
有关 API 详细信息,请参阅《Amazon CLI 命令参考》中的 SetAlarmState
。  
 - 
                    
 
以下代码示例演示了如何使用 start-metric-streams。
- Amazon CLI
 - 
             
                    
启动指定的指标流
以下
start-metric-streams示例启动指定账户中名为QuickFull-GuaFbs的指标流。aws cloudwatch start-metric-streams \ --namesQuickFull-GuaFbs此命令不生成任何输出。
有关更多信息,请参阅《Amazon CloudWatch 用户指南》中的使用指标流。
- 
                    
有关 API 详细信息,请参阅《Amazon CLI Command Reference》中的 StartMetricStreams
。  
 - 
                    
 
以下代码示例演示了如何使用 stop-metric-streams。
- Amazon CLI
 - 
             
                    
停止指定的指标流
以下
stop-metric-streams示例停止指定账户中名为QuickFull-GuaFbs的指标流。aws cloudwatch stop-metric-streams \ --namesQuickFull-GuaFbs此命令不生成任何输出。
有关更多信息,请参阅《Amazon CloudWatch 用户指南》中的使用指标流。
- 
                    
有关 API 详细信息,请参阅《Amazon CLI Command Reference》中的 StopMetricStreams
。  
 - 
                    
 
以下代码示例演示了如何使用 tag-resource。
- Amazon CLI
 - 
             
                    
为指定资源添加一个或多个标签
以下
tag-resource示例为指定账户中名为demo的 CloudWatch 警报添加 2 个标签。aws cloudwatch tag-resource \ --resource-arnarn:aws:cloudwatch:us-east-1:123456789012:alarm:demo\ --tagsKey=stack,Value=ProductionKey=team,Value=Devops此命令不生成任何输出。
有关更多信息,请参阅《Amazon CloudWatch 用户指南》中的标记 Amazon CloudWatch 资源。
- 
                    
有关 API 详细信息,请参阅《Amazon CLI 命令参考》中的 TagResource
。  
 - 
                    
 
以下代码示例演示了如何使用 untag-resource。
- Amazon CLI
 - 
             
                    
从指定资源中移除一个或多个标签
以下
untag-resource示例从指定账户中名为demo的 CloudWatch 警报中移除 2 个标签。aws cloudwatch untag-resource \ --resource-arnarn:aws:cloudwatch:us-east-1:123456789012:alarm:demo\ --tag-keysstackteam此命令不生成任何输出。
有关更多信息,请参阅《Amazon CloudWatch 用户指南》中的标记 Amazon CloudWatch 资源。
- 
                    
有关 API 详细信息,请参阅《Amazon CLI 命令参考》中的 UntagResource
。  
 -