daw*_*wit 3 put amazon-s3 amazon-web-services aws-lambda amazon-cloudwatch-metrics
我有一个用例,其中一些进程每隔6小时将一个文件放入S3存储桶.这个存储桶中已有数千个文件,如果在过去7小时内没有添加新文件,我想生成一个sns警报.什么是合理的方法?谢谢
有几种可能的方法:
每隔几分钟检查一次
配置Amazon CloudWatch Events以每隔几分钟触发一次AWS Lambda功能(取决于您希望报告的速度),获取存储桶列表并检查最后一个对象的添加时间戳.如果超过7小时,请发送提醒.
这种方法非常简单,但每隔几分钟就会做很多工作,包括在添加对象后的7个小时内.另外,如果你有很多对象,这可能会占用大量的Lambda时间和API调用.
跟踪上一个新文件
虽然这种方法有更多的组件,但它实际上是一个更简单的解决方案,因为它永远不必查看S3中的对象列表.相反,它只会记住添加最后一个对象的时间.
您可以提出一种更智能的方法,而不是每隔几分钟检查一次,在7小时内安排一个警报功能.每当添加新文件时,它都会更改计划,以便再次将其放置7小时.这就像不断推迟牙医预约一样.:)
使用Amazon CloudWatch警报
这是一种使用CloudWatch Alarm触发通知的简单方法.
SUM
以便在过去6小时内自定义度量标准为零时触发通知.还将其配置为在Alarm进入INSUFFICIENT_DATA状态时触发,以便在没有数据发送时正确触发(由于Lambda函数在没有创建对象时不会发送数据,因此比0度量更可能).唯一的缺点是报警期只有几个选项.它可以设置为6小时,但我不认为它可以设置为7小时.
如何提醒
至于如何提醒某人,向Amazon SNS主题发送消息是个好主意.人们可以通过电子邮件,短信和其他各种方式订阅.
归档时间: |
|
查看次数: |
2030 次 |
最近记录: |