Skip to content

Instantly share code, notes, and snippets.

@MrAtheist
Created February 8, 2017 22:49
Show Gist options
  • Save MrAtheist/2425b1e3eb7823c40b3162cb6a6f0124 to your computer and use it in GitHub Desktop.
Save MrAtheist/2425b1e3eb7823c40b3162cb6a6f0124 to your computer and use it in GitHub Desktop.
option_settings:
aws:elasticbeanstalk:healthreporting:system:
SystemType: enhanced
ConfigDocument: |
{
"CloudWatchMetrics": {
"Environment": {
"ApplicationLatencyP10": 60,
"ApplicationLatencyP50": 60,
"ApplicationLatencyP75": 60,
"ApplicationLatencyP85": 60,
"ApplicationLatencyP90": 60,
"ApplicationLatencyP95": 60,
"ApplicationLatencyP99": 60,
"ApplicationLatencyP99.9": 60,
"ApplicationRequests2xx": 60,
"ApplicationRequests3xx": 60,
"ApplicationRequests4xx": 60,
"ApplicationRequests5xx": 60,
"ApplicationRequestsTotal": 60,
"InstancesDegraded": 60,
"InstancesInfo": 60,
"InstancesNoData": 60,
"InstancesOk": 60,
"InstancesSevere": 60,
"InstancesPending": 60,
"InstancesUnknown": 60,
"InstancesWarning": 60
},
"Instance": {
"ApplicationLatencyP10": 60,
"ApplicationLatencyP50": 60,
"ApplicationLatencyP75": 60,
"ApplicationLatencyP85": 60,
"ApplicationLatencyP90": 60,
"ApplicationLatencyP95": 60,
"ApplicationLatencyP99": 60,
"ApplicationLatencyP99.9": 60,
"ApplicationRequests2xx": 60,
"ApplicationRequests3xx": 60,
"ApplicationRequests4xx": 60,
"ApplicationRequests5xx": 60,
"ApplicationRequestsTotal": 60,
"CPUIdle": 60,
"CPUIowait": 60,
"CPUIrq": 60,
"CPUNice": 60,
"CPUSystem": 60,
"CPUSoftirq": 60,
"CPUUser": 60,
"InstanceHealth": 60,
"LoadAverage1min": 60,
"LoadAverage5min": 60,
"RootFilesystemUtil": 60
}
},
"Version": 1
}
Resources:
RealsuiteHealthycounts:
Type: AWS::CloudWatch::Alarm
Properties:
AlarmDescription: "Healthy Host Count"
Namespace: AWS/ELB
Dimensions:
- Name: LoadBalancerName
Value : { "Ref" : "AWSEBLoadBalancer" }
MetricName: HealthyHostCount
Statistic: Average
Period: 300
EvaluationPeriods: 1
Threshold: 1
ComparisonOperator: LessThanThreshold
AlarmActions:
- Ref: RealsuiteAlarm
OKActions:
- Ref: RealsuiteAlarm
RealsuiteHTTP4xx:
Type: AWS::CloudWatch::Alarm
Properties:
AlarmDescription: "HTTP 4xx"
Namespace: AWS/ELB
Dimensions:
- Name: LoadBalancerName
Value : { "Ref" : "AWSEBLoadBalancer" }
MetricName: HTTPCode_HTTP_4XX
Statistic: Sum
Period: 60
EvaluationPeriods: 1
Threshold: 60
ComparisonOperator: GreaterThanOrEqualToThreshold
AlarmActions:
- Ref: RealsuiteAlarm
OKActions:
- Ref: RealsuiteAlarm
RealsuiteHTTP5xx:
Type: AWS::CloudWatch::Alarm
Properties:
AlarmDescription: "HTTP 5xx"
Namespace: AWS/ELB
Dimensions:
- Name: LoadBalancerName
Value : { "Ref" : "AWSEBLoadBalancer" }
MetricName: HTTPCode_HTTP_5XX
Statistic: Sum
Period: 60
EvaluationPeriods: 1
Threshold: 3
ComparisonOperator: GreaterThanOrEqualToThreshold
AlarmActions:
- Ref: RealsuiteAlarm
OKActions:
- Ref: RealsuiteAlarm
RealsuiteELB4xx:
Type: AWS::CloudWatch::Alarm
Properties:
AlarmDescription: "ELB 4xx"
Namespace: AWS/ELB
Dimensions:
- Name: LoadBalancerName
Value : { "Ref" : "AWSEBLoadBalancer" }
MetricName: HTTPCode_ELB_4XX
Statistic: Sum
Period: 60
EvaluationPeriods: 1
Threshold: 60
ComparisonOperator: GreaterThanOrEqualToThreshold
AlarmActions:
- Ref: RealsuiteAlarm
OKActions:
- Ref: RealsuiteAlarm
RealsuiteELB5xx:
Type: AWS::CloudWatch::Alarm
Properties:
AlarmDescription: "ELB 5xx"
Namespace: AWS/ELB
Dimensions:
- Name: LoadBalancerName
Value : { "Ref" : "AWSEBLoadBalancer" }
MetricName: HTTPCode_ELB_5XX
Statistic: Sum
Period: 60
EvaluationPeriods: 1
Threshold: 3
ComparisonOperator: GreaterThanOrEqualToThreshold
AlarmActions:
- Ref: RealsuiteAlarm
OKActions:
- Ref: RealsuiteAlarm
RealsuiteAlarm:
Type: AWS::SNS::Topic
Properties:
Subscription:
- Endpoint:
Fn::GetOptionSetting:
OptionName: AlarmEmail
DefaultValue: "nobody@amazon.com"
Protocol: email
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment