使用告警ARN禁用告警



根据文档,我可以使用Python来禁用这样的警报。但是,该选项只提供AlarmNames参数。我想使用arn禁用警报。

client = boto3.client('cloudwatch')
disable_alarm = client.disable_alarm_actions(AlarmNames=[name])

一个选项可能是使用ARN首先获取名称,然后使用该名称禁用它。但我该怎么做呢?

如果真的没有其他选择,您可能需要使用client.describe_alarms()或等效分页器查询所有警报,并遍历它们,直到找到具有匹配ARN的警报。

下面的例子列出了所有的AlarmArn =>us-east-1中的AlarmName关联:

session = boto3.session.Session(region_name="us-east-1")
client = session.client("cloudwatch")
nextToken = {}
while True:
result = client.describe_alarms(MaxRecords=100, **nextToken)
if 'MetricAlarms' in result:
for alarm in result['MetricAlarms']:
print("{} => {}".format(alarm['AlarmArn'], alarm['AlarmName']))
if 'CompositeAlarms' in result:
for alarm in result['CompositeAlarms']:
print("{} => {}".format(alarm['AlarmArn'], alarm['AlarmName']))
if 'NextToken' in result:
nextToken = {'NextToken': result['NextToken']}
else:
break

Boto3文档

相关内容

  • 没有找到相关文章

最新更新