AWS provides a handy way for monitoring AWS resources and applications running on AWS in the form of AWS CloudWatch management service. This AWS Cloudwatch tutorial will teach you what is CloudWatch in AWS from scratch along with its advantages and more.
The following topics are covered in this What is Cloudwatch in AWS tutorial
- What is Amazon CloudWatch?
- How CloudWatch Works?
- CloudWatch Alarms
- Advantages of Amazon CloudWatch
- CloudWatch Dashboard
What is CloudWatch in AWS?
Amazon CloudWatch is AWS monitoring and management service which is designed for the purpose of maintaining the services and resources which are used. Particularly, this is designed for developers, site reliability engineers, IT managers, and system operators to make their life easier.
But how does it help in AWS monitoring and managing our AWS services? It collects and displays the stats data, metrics, and insights on particular AWS services and your applications which lets you manage precisely what you want to manage. The collection data is in the form of logs, metrics and events for each AWS service and resource. Using CloudWatch you can create automated actions, troubleshooting is much easier, and optimize your applications by removing the factor increasing your applications latency.
Amazon CloudWatch is free for 10 custom metrics and Alarms. 10 custom metrics and 10 Alarms are free for a lifetime and exceeding that will add charges.
1,000,000 API requests, 5GB of Log Data ingestion and Archiving is free and also you can set up 3 dashboards with upto 50 metrics in one dashboard each month.
Now that you know what is CloudWatch in AWS, let’s move forward in this AWS CloudWatch Tutorial and understand how AWS CloudWatch Works.
How AWS CloudWatch Works?
Now that we understand what is Cloudwatch in AWS, let us move on and understand what is its common workflow.
CloudWatch performs 4 actions normally, first it collects log and metric data, then monitors the applications, then Acts according to the instructions, finally analyzes the collected log and metric data for further usage.
You can mention the service in CloudWatch and it starts collecting it’s raw log and metrics data. Even while collection it keeps on monitoring and updates the data. While AWS monitoring, if any issues are found, it will act and try to troubleshoot it. With all the collected log and metric data, it will analyze and produce visualized content for better understanding and further usage.
Amazon CloudWatch Alarms
CloudWatch Alarms are used to monitor only metric data. You can set alarms in order to take actions by providing a condition in the metric data of a resource.
CPU Utilization and Bytes Download are metric data of EC2 and SNS specifically.
Let us learn this with an example. Consider the CPU Utilization of the EC2 instance can be upto 75% and an Alarm should be evoked once it crosses the range.
There are 3 alarm states:
- OK – Within Threshold.
- ALARM – Crossed Threshold.
- INSUFFICIENT_DATA – Metric not available/ Missing data (Good, Bad, Ignore, Missing).
One of these states will be considered at each millisecond of using CloudWatch metric data.
Now, look at this graph:
- When the CPU Utilization is 75% or lesser than 75% the Alarm state is at OK
- If it exceeds it is at ALARM you will notified
- Whenever there is no CPU Utilization data or incorrect data is produced, it will be called INSUFFIECIENT_DATA
Advantages of Amazon CloudWatch
- One dashboard, Access all data
- The web applications produce a lot data as they are highly distributed, to access all the data which have been collected you just need a single CloudWatch dashboard.
- Visibility on the complete Infrastructure
- You can see through all the AWS resources and services you use, so you can correlate and contradict data produced from multiple services.
- Improve total cost of ownership
- CloudWatch can be used to set high resolution alarms and can take automated actions while there is an breach in the limits provided. This can help in minimize the costs spent on AWS services
- Insights from logs
- You receive detailed insights on separate AWS services and the applications you run on the infrastructure. Data like memory, CPU utilization, and capacity utilization can be monitored and receive insights from it
- Optimize Applications and resources
- Using the log and metric data, you can optimize your AWS services to provide maximum throughput and performance.
Amazon CloudWatch Dashboard
This is how a CloudWatch dashboard looks like without any services connected to it.
Hope this AWS CloudWatch Tutorial helped you understand what is CloudWatch in AWS and how it works.