CloudWatch enables real-time monitoring of AWS resources such as Amazon EC2 instances, Amazon EBS (Elastic Block Store) volumes, Elastic Load Balancers, and Amazon RDS database instances. The application automatically provides metrics for CPU utilization, latency, and request counts; users can also stipulate additional metrics to be monitored, such as such as memory usage, transaction volumes or error rates.
Users can access CloudWatch functions through an API, command-line tools, one of the AWS SDK (software development kits) or the AWS Management Console. The CloudWatch interface provides current statistics that can be viewed in graph format. Users can set notifications (called “alarms”) to be sent when something being monitored surpasses a specified threshold. The app can also detect and shut down unused or underused EC2 instances.
See a video about setting up monitoring alarms in CloudWatch: