Amazon web services 使用AWS控制台自动激活接收账单警报选项的方法

Amazon web services 使用AWS控制台自动激活接收账单警报选项的方法,amazon-web-services,amazon-cloudformation,aws-cdk,Amazon Web Services,Amazon Cloudformation,Aws Cdk,我正在寻找一种自动激活AWS计费首选项以接收计费警报的方法。据我们所知,这是从Cloudwatch接收账单警报的要求 我搜索了boto3参考文档,但没有成功。我不想使用静态check,就像结束一样 对我来说,在一定的时间和阈值上进行扫描似乎是理想的解决方案 我正在考虑在帐户设置堆栈中添加一个选项来激活此选项 提前谢谢 感谢@Dvir669。我发现,这解决了我的问题,不受地区限制(全球服务,带有地区端点),也不需要更改计费首选项。但是AWS预算配备了一个复杂的计费仪表板。最后,警报通知格式良好,默

我正在寻找一种自动激活AWS计费首选项以接收计费警报的方法。据我们所知,这是从Cloudwatch接收账单警报的要求

我搜索了boto3参考文档,但没有成功。我不想使用静态check,就像结束一样

对我来说,在一定的时间和阈值上进行扫描似乎是理想的解决方案

我正在考虑在帐户设置堆栈中添加一个选项来激活此选项


提前谢谢

感谢@Dvir669。我发现,这解决了我的问题,不受地区限制(全球服务,带有地区端点),也不需要更改计费首选项。但是
AWS预算
配备了一个复杂的计费仪表板。最后,警报通知格式良好,默认情况下不需要SNS主题。我附上了一张照片

在CDK中,配置AWS预算非常简单:

# CDK Libs
from aws_cdk import core
from aws_cdk import aws_budgets as _budgets

class BillingAlertStack(core.Stack):

    def __init__(self, scope: core.Construct, id: str, **kwargs) -> None:
        super().__init__(scope, id, **kwargs)

        # The code that defines your stack goes here

        #####################
        # Emails for Alerts
        #####################

        emails_list = [
            "youremail1@example.com",
            ...
        ]

        #####################
        # Thresholds for Alerts
        #####################

        thresholds_list = [
            15,
            ...
        ]

        #####################
        # Budget Alert
        #####################

        subscribers_list=[]

        for emails in emails_list:
            subscribers_list.append(
                _budgets.CfnBudget.SubscriberProperty(
                    address=emails,
                    subscription_type="EMAIL"
                )
            )

        for thresholds in thresholds_list:
            property= _budgets.CfnBudget.BudgetDataProperty(
                budget_type="COST",
                budget_limit=_budgets.CfnBudget.SpendProperty(
                    amount=thresholds,
                    unit="USD"
                ),
                time_unit="MONTHLY",
            )
            budgets = _budgets.CfnBudget(
                self,
                id="Budget-{}".format(thresholds),
                budget=property,
                notifications_with_subscribers=[
                    _budgets.CfnBudget.NotificationWithSubscribersProperty(
                        notification=_budgets.CfnBudget.NotificationProperty(
                            comparison_operator="GREATER_THAN",
                            notification_type="ACTUAL",
                            threshold=80,
                            threshold_type="PERCENTAGE"
                        ),
                        subscribers=subscribers_list
                    )
                ]
            )

正如您所看到的,到目前为止还没有详细的构造可用,但是
Python
与普通的
CloudFormation
相比,它本身带来了优势。在
app.py
中,您可以一次指定多个帐户。这非常有意义,在AWS组织内的OU上应用AWS预算

您看过AWS预算了吗?这可能会解决您的需要,您可以将其设置为多个维度和阈值。我知道关于预算,但堆栈持有人要求所有AWS支出都有全局警报。您是否使用AWS合并帐户?组织机构?是的。我需要澄清的是,账单警报需要放在OU以及特定帐户上。