A simple AWS budget notifier.
Project description
AWS Budget Notifier
Setup a AWS Budget notification using AWS Cloud Development Kit (CDK). The construct supports notifying to
- users via e-mail. Up to 10 e-mail addresses are supported
- an SNS topic The SNS topic needs to exist and publishing to the topic needs to be allowed.
Properties
Example usages
Notification on breaching forecasted cost
This example is handy for keeping control over your private AWS Bill. For myself I aim to not spent more than 10 Euro / 10 USD per month and this alarm reminds me.
const app = new cdk.App();
const stack = new Stack(app, "BudgetNotifierStack");
// Define the SNS topic and setup the resource policy
const topic = new Topic(stack, "topic");
const statement = new PolicyStatement({
effect: Effect.ALLOW,
principals: [new ServicePrincipal("budgets.amazonaws.com")],
actions: ["SNS:Publish"],
sid: "Allow budget to publish to SNS"
});
topic.addToResourcePolicy(statement);
// Setup the budget notifier and pass the ARN of the SNS topic
new BudgetNotifier(stack, "notifier", {
topicArn: topic.topicArn,
// Filter on the availability zone `eu-central-1`
availabilityZones: ["eu-central-1"],
costCenter: "myCostCenter",
// Limit and unit defining the budget limit
limit: 10,
unit: "USD",
// When breaching the threshold of 85% of the 10 USD notifications will be send out.
threshold: 85,
notificationType: NotificationType.FORECASTED,
});
Notification via e-Mail
As alternative to the notification via SNS you can specify a list of e-mail recipients.
const app = new cdk.App();
const stack = new Stack(app, "BudgetNotifierStack");
new BudgetNotifier(stack, 'notifier', {
recipients: ['john.doe@foo.bar'],
// Filter on the availability zone `eu-central-1`
availabilityZones: ['eu-central-1'],
costCenter: 'MyCostCenter',
// Limit and unit defining the budget limit
limit: 10,
unit: 'USD',
// When breaching the threshold of 85% of the 10 USD notifications will be send out.
threshold: 85,
notificationType: NotificationType.FORECASTED,
});
Contributions
dedominicisfa |
Philip M. Gollucci |
Links
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file cdk_budget_notifier-0.3.37.tar.gz
.
File metadata
- Download URL: cdk_budget_notifier-0.3.37.tar.gz
- Upload date:
- Size: 40.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.12.5
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | fd90bc4bb8966de984f252f8f5b8934f8f6ef6fb164977cef45108c556c5f476 |
|
MD5 | a054a11a56e2a8fdebc34fcc55c2ee6b |
|
BLAKE2b-256 | 3c751eaaa44f5c9e913e13375f9cb9d883c7fa0e450489b1dace4f80a817bd5e |
File details
Details for the file cdk_budget_notifier-0.3.37-py3-none-any.whl
.
File metadata
- Download URL: cdk_budget_notifier-0.3.37-py3-none-any.whl
- Upload date:
- Size: 39.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.12.5
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7051df8f7675114731844decaeed0a3e997d1ca6d87250cb8c744e0aec3ab5c4 |
|
MD5 | 17036754c4efdfdf123590bcdfefe16e |
|
BLAKE2b-256 | 19f31d2880819c13df4efc57a89e79776f148ea3934daac3b3291ed4ce4b4d4c |