DEV Community

Cover image for Why (& How) You Should Set An AWS Budget Alert Using Dimensions

Why (& How) You Should Set An AWS Budget Alert Using Dimensions

This post is inspired from my previous post on "Why Is My AWS Cloudwatch Service Cost So High?".

From experience, I have noticed either no budgeting alerts are set up, or if they are, they are typically at the overall AWS cost/account level. There are advantages and disadvantages to setting alerts at the overall cost/account level.

One disadvantage of this approach is that you may miss out on services whose costs have increased but are being obscured by those whose costs have reduced. I once encountered a situation in which the cost of Cloudwatch doubled but the total AWS budget warning did not go off because the cost of other services had decreased for the month.

While working to improve our cost analysis process, I discovered that AWS has a budget alert feature that allows you to set up an alert by dimension as well as overall cost level, ensuring that such a scenario does not occur in the future. Examples of dimensions that you can choose to set a budget alert are AWS services, linked accounts, regions, instance types, consumption types, and other options.

The rest of this post will lead you through the steps of creating a dimension-specific alert. As an example, we will use AWS services as the dimension, and we will set up a Cloudwatch service budget alert. There are five steps to creating a budget alert.

Step 1: Select budget type
There are four types of budget alerts you can set. They are Cost, Usage, Saving plan and Reservation budgets. In our scenario, we need to create a cost budget alert.
Image description

Step 2: Set Your budget
In "Set Your Budget" step, you provide budget name, budget amount and budget scope. Budget scope is where you filter specific AWS cost dimension as seen in the screenshot below.

Image description
Image description

3: Configure alerts
In configure alerts step, you set the alert threshold and notification. In the example below the alert threshold is set to 70% of actual budget. This means if the actual budget is $3000 per month than if the cost of CLoudwatch service in any given month crosses $2100, the budget alert will be triggered and notification will be sent to appropriate team/person defined in the notification section.
Image description

4: Attach Actions (Optional)
Attach Actions step is optional but you can define an automatic action to take if alert is triggered.
Image description

5: Review & Create Budget
Final step is to review the budget and if you are happy, Create the budget.
Image description

There is benefit in setting up dimension-based budget alerts in addition to overall cost budget alerts. It will allow in detecting a spike in the cost of a specific service that may be concealed by cost decreases in other services.


Thanks for reading!

If you enjoyed this article feel free to share on social media 🙂

Say Hello on: Linkedin | Twitter | Polywork

Blogging: Dev | Hashnode

Latest comments (0)