in source/CRRMonitorTrailAlarm/CRRMonitorTrailAlarm.py [0:0]
def put_metric_alarm(sns_topic, src_buckets):
print('Metric Alarms:')
try:
for bucket in src_buckets:
client['cloudwatch']['handle'].put_metric_alarm(
AlarmName='FailedReplicationAlarm-' + bucket,
AlarmDescription='Trigger a alarm for Failed Replication Objects.',
ActionsEnabled=True,
AlarmActions=[
sns_topic,
],
MetricName='FailedReplications',
Namespace='CRRMonitor',
Statistic='Sum',
Dimensions=[
{
'Name': 'SourceBucket',
'Value': bucket
},
],
Period=60,
EvaluationPeriods=1,
Threshold=0.0,
ComparisonOperator='GreaterThanThreshold'
)
except Exception as e:
print(e)
print('Data Events Trail')
raise e