因此,我一直在互联网上查阅相关资料,尝试让我的 Elastic Beanstalk 应用程序在指标出现问题时向我发送电子邮件。
我知道我可以通过控制台执行此操作,但我想要一种可配置的方法,可以自动用于多个部署。
到目前为止我已经有了这个(参见编辑):
Resources:
AWSCloudWatch:
Type: "AWS::CloudWatch::Alarm"
Properties:
ActionsEnabled: true
AlarmActions: ""
AlarmDescription: "Traffic spike app over threshold"
AlarmName: "APP CPU Over 70%"
ComparisonOperator: GreaterThanOrEqualToThreshold
EvaluationPeriods: 5
MetricName: CPUUtilization
Namespace: Environment Health
Period: 60
Statistic: Maximum
Threshold: 70
Unit: Percent
如何配置多个警报(环境运行状况监视器、CPU 监视器、延迟监视器)并让它们向我发送电子邮件?
编辑:上面的代码创建了一个与ELB无关的警报。它不会显示在控制台上,而是在完全独立的区域中创建。 :(
最佳答案
除了警报之外,您还需要进一步定义事件路由到的 SNS 主题。
之后,您可以定义电子邮件订阅,它将接收这些 Cloudwatch 警报。
这里是一个示例 CloudFormation 模板:
AWSTemplateFormatVersion: '2010-09-09'
Resources:
AlarmTopic:
Type: AWS::SNS::Topic
Alarm:
Type: AWS::CloudWatch::Alarm
Properties:
ActionsEnabled: true
AlarmActions:
- Ref: AlarmTopic
AlarmDescription: "Traffic spike app over threshold"
AlarmName: "APP CPU Over 70%"
ComparisonOperator: GreaterThanOrEqualToThreshold
EvaluationPeriods: 5
MetricName: CPUUtilization
Namespace: Environment Health
Period: 60
Statistic: Maximum
Threshold: 70
Unit: Percent
TopicSubscription:
Type: AWS::SNS::Subscription
Properties:
Endpoint: "<a href="https://stackoverflow.com/cdn-cgi/l/email-protection" class="__cf_email__" data-cfemail="d9bcb4b8b0b599bca1b8b4a9b5bcf7bab6b4" rel="noreferrer noopener nofollow">[email protected]</a>"
Protocol: Email
TopicArn:
Ref: AlarmTopic
关于amazon-web-services - 使用 SNS 电子邮件警报为 Elastic Beanstalk 创建多个 Cloudwatch 警报,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42604854/