CloudWatch EC2 CPUUtilization请求的空数据集

时间:2017-11-02 14:55:55

标签: python amazon-ec2 boto3 amazon-cloudwatch

我可以使用适用于CloudWatch的AWS控制台每5分钟查看一次事件,但是在使用以下查询时:

import boto3
from pprint import pprint
from datetime import timedelta
from datetime import datetime



stats = cloudwatch.get_metric_statistics(
    Namespace='AWS/EC2',
    MetricName='CPUUtilization',
    StartTime=datetime(2017, 11,1),
    EndTime=datetime(2017, 11,2),
    Statistics=['Maximum'],
    Period=300
    ],
)

pprint(stats)

我没有得到任何数据点:

{'Datapoints': [],
 'Label': 'CPUUtilization',
 'ResponseMetadata': {'HTTPHeaders': {'content-length': '337',
                                      'content-type': 'text/xml',
                                      'date': 'Thu, 02 Nov 2017 15:01:42 GMT',
                                      'x-amzn-requestid': 'xxxxxx'},
                      'HTTPStatusCode': 200,
                      'RequestId': 'xxxxxx',
                      'RetryAttempts': 0}}

知道我在这里做错了吗?我甚至小心地指定了正确的区域。

1 个答案:

答案 0 :(得分:0)

根据 Eugene的评论,包括Dimensions参数值:

import boto3
from pprint import pprint
from datetime import timedelta
from datetime import datetime


cloudwatch = boto3.client('cloudwatch', region_name='eu-west-1')

stats = cloudwatch.get_metric_statistics(
    Namespace='AWS/EC2',
    MetricName='CPUUtilization',
    StartTime=datetime(2017, 11,1),
    EndTime=datetime(2017, 11,2),
    Statistics=['Maximum'],
    Period=300,
    Dimensions=[
        {
            'Name': 'InstanceId',
            'Value': 'i-xxxx'
        },
    ],
)

pprint(stats)

以上内容类似于在AWS控制台上使用CloudWatch EC2 每实例指标