首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >python boto脚本中显示空响应的EC2实例的DiskSpaceUtilization指标

python boto脚本中显示空响应的EC2实例的DiskSpaceUtilization指标
EN

Stack Overflow用户
提问于 2018-08-22 15:26:44
回答 1查看 1.4K关注 0票数 1

我想获取DiskSpaceUtilization指标的数据点,但get_metrics_statitics的响应为空。

get_metrics_statitics函数适用于其他指标,即CPUUtilization、MemoryUtilization。但同样的代码不适用于DiskSpaceUtilization。

我尝试了下面的代码:

import sys
from datetime import datetime as dt, timedelta
import boto3

metricdictionary = {}
metricdictionary['DiskSpaceUtilization'] = 'System/Linux,Percent'

ec2_resource = boto3.resource("ec2")
cloudwatch = boto3.client("cloudwatch")

date = dt.today() - timedelta(days=1)
year = date.year
month = date.month
day = date.day

response = cloudwatch.get_metric_statistics(Namespace='System/Linux', 
                            MetricName='DiskSpaceUtilization', 
                            Dimensions=[{'Name': 'InstanceId', 
                            'Value': 'i-0a22a230c4dae4195', }],                                
                            StartTime=dt(year, month, day, 00, 00, 00),
                            EndTime=dt(year, month, day, 23, 59, 59),
                            Period=3600, 
                            Statistics=['Average', 'Minimum', 'Maximum'],
                            Unit='Percent')

print response

提前谢谢。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-09-06 20:05:47

我已经修改了get_metric_statistics函数,它工作得很好。对于磁盘空间利用率,我们需要添加额外的两个维度,即FileSystem和Mountpath。

response = cloudwatch.get_metric_statistics(Namespace=namesp, MetricName='DiskSpaceUtilization',
                                                            Dimensions=[
                                                                {'Name': 'InstanceId', 'Value': instance['InstanceId'], },
                                                                {'Name': 'Filesystem', 'Value': name_of_file_system},
                                                                {'Name': 'MountPath', 'Value': MountPath_for_filesystem}
                                                            ],
                                                            StartTime=dt(year, month, day, 00, 00, 00),
                                                            EndTime=dt(year, month, day, 23, 59, 59),
                                                            Period=3600, Statistics=['Average', 'Minimum', 'Maximum'],
                                                            Unit='Percent')
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51961756

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档