0

私が実装しようとしているのは、AWS 請求アラームでメールを送信し、データベース内の何かを更新したい場所から Python で記述されたラムダ関数を呼び出したいということです。では、これらの両方を取得するにはどうすればよいですか。アラームに対してユーザーにメールを送信できることはわかっていますが、アラームがトリガーされたときに両方を行うにはどうすればよいですか?

{
    "Type": "AWS::CloudWatch::Alarm",
    "Properties": {
        "AlarmName": "AWS Polly Alarm One",
        "AlarmDescription": "AWS Polly Alarm One",
        "ActionsEnabled": true,
        "OKActions": [],
        "AlarmActions": [
            "arn:aws:sns:us-east-1:XXXXXXXXXXXX:Turn_Off_AWS_Polly_Send_Email_One"
        ],
        "InsufficientDataActions": [],
        "MetricName": "EstimatedCharges",
        "Namespace": "AWS/Billing",
        "Statistic": "Maximum",
        "Dimensions": [
            {
                "Name": "ServiceName",
                "Value": "AmazonPolly"
            },
            {
                "Name": "Currency",
                "Value": "USD"
            }
        ],
        "Period": 60,
        "EvaluationPeriods": 1,
        "DatapointsToAlarm": 1,
        "Threshold": 0,
        "ComparisonOperator": "GreaterThanOrEqualToThreshold",
        "TreatMissingData": "missing"
    }
}
4

1 に答える 1

1

Amazon CloudWatch アラームを設定するときに、Amazon Simple Notification Service (SNS) トピックを指定できます。アラームに関連するメッセージは、このトピックに送信されます。

Amazon SNS は「パブリッシュ-サブスクライブ」モデルです。つまり、受信者は通知を受け取るためにトピックにサブスクライブする必要があります。サブスクリプションの種類は次のとおりです。

  • Eメール
  • AWS ラムダ関数

トピックのすべてのサブスクライバーは、トピックに送信されたメッセージを受信します。

サブスクライブされた AWS Lambda 関数が SNS トピックからメッセージを受信すると、メッセージをトリガーしたアラームの詳細が提供されます。この情報を使用して、関連データをデータベースに保存できます。

于 2021-07-09T23:37:08.267 に答える