Overview

AWS Cloudwatch is a monitoring tool that let you sleep peacefully while doing the watch for you. You can use it set Alarms & Notifications and do actions in response to events,

You can get alerts regarding your EC2 instance, Billing updates or other resources.

You can also set actions in response to CloudWatch alarms. For eg, an auto scaling in EC2 can be configured if the network requests surpasses a predefined threshold.

Simple Notification Service (SNS)

The SNS can send you notifications as Email, SMS or via Http.

Topic

To use SNS, we first need to create a topic and subscribe to that topics via any of the mentioned channels. Topics are region specific.

Lets create a topic. Select Simple Notification Service from AWS Web Console -> Services:

Click on Create Topic

Enter topic name and click on Create Topic

Now click on Create Subscription to add a new subscription

Select protocol and endpoint:

For email subscriptions, you need to confirm the email by clicking on the link send to specified email.

Create CloudWatch Billing Alert

Lets try to create a sample billing alert alarm.

We need to turn on Billing Alert in the Billing Dashboard.

Goto My Billing Dashboard -> Billing Preferences -> check Receive Billing Alerts

goto Services -> CloudWatch

then click on Create alarm (you might need to switch to N. Virginia region from right top menu as currently Billing is supported in this region only.

Next screen, click Select metric -> select Billing -> select Total Estimated Charge -> select USD -> Select Metric

Select threshold in the next section and click Next

Now, select the SNS topic and click Next. (this section also have options to select EC2 actions)

Next page give a unique name and click Next. Then click Create Alarm and you can see that the alarm is created: