amazon-web-services - AWS Boto3 - client.get_metric_statistics 中的数据点显示在一个文件上,但不显示在另一个文件上
问题描述
我有一个记录 Cloudwatch 指标的函数client.get_metric_statistics
,当我执行它时,数据点不显示,但我将指标函数自己提取到另一个文件,执行时它显示数据点没有问题。
唯一不同的是,我有一个 InstanceId 在显示正常的那个上,我有一个 AMIID,正如您在我的主脚本上看到的那样,它必须是自动化的,所以我不确定是否允许使用 AMIID,但我不明白为什么它不应该或问题是什么,所以我正在寻找一些反馈。
import sys
import boto3
import time
ec2 = boto3.resource('ec2')
s3_resource = boto3.resource('s3', region_name='eu-west-1')
s3 = boto3.resource('s3')
instance = ec2.create_instances(
ImageId='ami-02ifd1b532b22l6h3',
MinCount=1,
MaxCount=1,
InstanceType='t2.nano',
KeyName = 'key1.pem',
SecurityGroupIds=[sg.group_id],
UserData = user_data,
)
from datetime import datetime, timedelta
time.sleep(300)
client = boto3.client("cloudwatch")
response = client.get_metric_statistics(
Namespace="AWS/EC2",
MetricName="CPUUtilization",
Dimensions=[{"Name": "AMIID", "Value": "ami-13add1h575a25e4d6"}],
StartTime=datetime.utcnow() - timedelta(seconds=200),
EndTime=datetime.utcnow(),
Period=300,
Statistics=["Average"],
Unit="Percent",
)
print(response)
for cpu in response["Datapoints"]:
print(cpu)
s3.Bucket(name='buket2')
ec2.SecurityGroup(id='sg-06b84927ae5rd3ad1')
{'Label': 'CPUUtilization', 'Datapoints': [], 'ResponseMetadata': {'RequestId': '', 'HTTPStatusCode': 200, 'HTTPHeaders': {'x-amzn-requestid': '', 'content-type': 'text/xml', 'content-length': '357', 'date': 'Sun, 18 Jul 2021 00:26:57 GMT'}, 'RetryAttempts': 0}}
sg-06b84927ae5rd3ad1
解决方案
ImageId:此维度过滤您为运行此 Amazon EC2 Amazon 系统映像 (AMI) 的所有实例请求的数据。可用于启用详细监控的实例。
您似乎正在使用AMIID
而不是ImageId
.
您始终可以使用以下方式查看可用尺寸:
aws cloudwatch list-metrics --namespace 'AWS/EC2'
推荐阅读
- html - 如何仅使用 css 将标题放在标题标签的中心?
- php - 多个动态生成的 div 的手风琴式显示
- ios - 自定义 UITableViewCell 中的 UITextField 委托在第一次加载时不会被调用
- c# - 使用 TryGetValue 防止出现“已添加具有相同键的项目”异常
- java - 方法不会使用 onBackPressed() 覆盖其超类 Android Fragment 中的方法
- angularjs - 在 webpack 4 中加载 AngularJS html 模板呈现 [object Module]
- python - 为什么我不能从此输出列表中删除 NaN 值?
- python-3.x - 为什么 python write() 函数对文件不保存数值,除非你将它们转换为字符串?
- java - 为什么 UserDefinedAggregateFunction 中的 MutableAggregationBuffer 需要 bufferSchema?
- javascript - Twilio Client JS-SDK Websocket 不断重新连接