CloudWatch
A Monitoring solution for AWS. Many AWS service send data to CloudWatch by default.
- basic monitoring is free (reporting once per 5 minute period).
- detailed monitoring can be enabled on EC2 to get reports every minute
CloudWatch Metrics
Every metric has a:
- timestamp
- namespace: metrics in different namespaces are isolated from each other
- dimensions: a key-value pair for additional filtering
Custom Metrics
Allow applications to send their own metrics to CloudWatch. Supports a max rate of 1/second.
CloudWatch Dashboard
Customisable home pages where widgets can be used to visualise CloudWatch data.
Alternatively data can be pulled using the GetMetricData API and visualised with 3rd party tools.
CloudWatch Logs
Terminology
- event: a record of activity with a timestamp and message
- stream: a group of events that all belong to the same resource
- groups: a group of streams that share the same retention and permission settings
Cloud Watch Alarms
Initiate actions based on CloudWatchMetrics.
State
- OK: metric is within defined threshold
- ALARM: metric outside defined threshold
- INSUFFICIENT DATA: alarm just started, not enough data or not available
Action
When an alarm is triggered (transition state) an action can be taken
- an EC2 action
- a scaling action
- an SNS notification