Boto3:来自 AWS 实例的空数据点
Boto3: Empty Datapoint from AWS instance
我想编写一个 Python 脚本来获取我的 EC2 CPU 利用率。使用 get_metric_statistics() 方法时,输出响应显示为 。
据我所知,'Datapoints:[]' 数组不应为空。它应该 return 一些东西来获得 CPU 负载百分比。我的密码是
import boto3
import sys
import datetime
client = boto3.client('cloudwatch')
response = client.get_metric_statistics(
Namespace='AWS/EC2',
MetricName='CPUUtilization',
Dimensions=[
{
'Name': 'InstanceId',
'Value': 'i-***********'
},
],
StartTime=datetime.datetime.utcnow() - datetime.timedelta(seconds=600),
EndTime=datetime.datetime.utcnow(),
Period=120,
Statistics=[
'Average',
],
Unit='Percent'
)
print(response)
对这里的问题有什么帮助吗?谢谢!
要使用百分位统计,您必须先启用详细监控。
默认情况下,它采用默认区域,即 "ap-southeast-1"(位于 .aws/config 中)。在 .aws/credentials 文件中,它会自动获取配置 api 时使用的密钥和访问密钥。 如果它们冲突,则数据点 returns 为空。
解决方法:
1.为每个地区创建一个新的配置文件。在 .aws/config 中配置区域。我的看起来像这样
`[default]
region = ap-southeast-1
[profile nv]
region = us-east-1
[profile prod]
region = us-east-1
~ `
nv 和 prod 是用户创建的配置文件名称。
输入名称而不是默认名称
session = boto3.Session(profile_name='default')
在.aws/credentials.
中以同样的方式输入密钥和访问密钥
您可以使用 aws configure --your_profile_name
在配置文件和凭证文件中创建配置文件
我想编写一个 Python 脚本来获取我的 EC2 CPU 利用率。使用 get_metric_statistics() 方法时,输出响应显示为
据我所知,'Datapoints:[]' 数组不应为空。它应该 return 一些东西来获得 CPU 负载百分比。我的密码是
import boto3
import sys
import datetime
client = boto3.client('cloudwatch')
response = client.get_metric_statistics(
Namespace='AWS/EC2',
MetricName='CPUUtilization',
Dimensions=[
{
'Name': 'InstanceId',
'Value': 'i-***********'
},
],
StartTime=datetime.datetime.utcnow() - datetime.timedelta(seconds=600),
EndTime=datetime.datetime.utcnow(),
Period=120,
Statistics=[
'Average',
],
Unit='Percent'
)
print(response)
对这里的问题有什么帮助吗?谢谢!
要使用百分位统计,您必须先启用详细监控。
默认情况下,它采用默认区域,即 "ap-southeast-1"(位于 .aws/config 中)。在 .aws/credentials 文件中,它会自动获取配置 api 时使用的密钥和访问密钥。 如果它们冲突,则数据点 returns 为空。
解决方法: 1.为每个地区创建一个新的配置文件。在 .aws/config 中配置区域。我的看起来像这样
`[default]
region = ap-southeast-1
[profile nv]
region = us-east-1
[profile prod]
region = us-east-1
~ `
nv 和 prod 是用户创建的配置文件名称。
输入名称而不是默认名称
session = boto3.Session(profile_name='default')
在.aws/credentials.
中以同样的方式输入密钥和访问密钥
您可以使用 aws configure --your_profile_name
在配置文件和凭证文件中创建配置文件