我试图用Boto3-CloudWatch-put_metric_报警创建一个报警,但遇到了困难
以下是提供给函数的关键字参数:
{'ActionsEnabled': False,
'AlarmDescription': 'Monitor for Idle instances',
'AlarmName': 'IdleComponents',
'ComparisonOperator': 'GreaterThanThreshold',
'DatapointsToAlarm': 6,
'EvaluationPeriods': 6,
'Metrics': [{'Id': 'CPU',
'MetricStat': {'Metric': {'Dimensions': [{'Name': 'InstanceId',
'Value': 'i-XX'}],
'MetricName': 'CPUUtilization',
'Namespace': 'AWS/EC2'},
'Period': 300,
'Stat': 'Average',
'Unit': 'Percent'},
'ReturnData': False},
{'Id': 'Net',
'MetricStat': {'Metric': {'Dimensions': [{'Name': 'InstanceId',
'Value': 'i-XX'}],
'MetricName': 'NetworkIn',
'Namespace': 'AWS/EC2'},
'Period': 300,
'Stat': 'Average',
'Unit': 'Megabytes'},
'ReturnData': False},
{'Expression': 'IF(CPU < 5, 1, 0) AND IF(Net < 5, 1, 0)',
'Id': 'e1',
'ReturnData': True}],
'Threshold': 0}
通过目视检查,这似乎是一个有效的输入,当在CloudWatch控制台上手动创建表达式时,表达式会按照预期工作,但通过Boto3运行时,我得到:
botocore.exceptions.ClientError:调用PutMetricAlarm操作时出错(ValidationError):无效度量列表
文档{a1}声称您可以定义一个报警,这样您最多可以使用10个度量和10个表达式,其中一个度量查询返回报警数据
我不确定我在这里做错了什么。 谢谢
Id必须以小写字母开头,请尝试将
CPU
和Net
更改为cpu
和net
相关问题 更多 >
编程相关推荐