這是 AWS CDK v2 開發人員指南。較舊的 CDK v1 已於 2022 年 6 月 1 日進入維護,並於 2023 年 6 月 1 日結束支援。
本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
使用 aws-cloudwatch 套件在 Amazon CloudWatch CloudWatch 警示。您可以使用預先定義的指標或建立自己的指標。
使用現有的指標
許多 AWS 建構程式庫模組可讓您在具有指標的物件執行個體上,將指標名稱傳遞至便利方法,藉此在現有指標上設定警示。例如,指定 Amazon SQS 佇列時,您可以從佇列的 metric() 方法取得指標 ApproximateNumberOfMessagesVisible:
const metric = queue.metric("ApproximateNumberOfMessagesVisible");
建立您自己的指標
建立您自己的指標,如下所示,其中命名空間值應該與 Amazon SQS 佇列的 AWS/SQS 類似。 Amazon SQS 您也需要指定指標的名稱和維度:
const metric = new cloudwatch.Metric({
namespace: 'MyNamespace',
metricName: 'MyMetric',
dimensionsMap: { MyDimension: 'MyDimensionValue' }
});
建立警示
擁有指標、現有指標或您定義的指標後,您就可以建立警示。在這個範例中,當過去三個評估期間中的兩個 中有 100 個以上的指標時,就會引發警示。您可以透過 comparisonOperator
屬性在警示中使用小於 等比較。Greater-than-or-equal-to是 AWS CDK 預設值,因此我們不需要指定它。
const alarm = new cloudwatch.Alarm(this, 'Alarm', {
metric: metric,
threshold: 100,
evaluationPeriods: 3,
datapointsToAlarm: 2,
});
建立警示的替代方法是使用指標的 createAlarm() Alarm
方法,該方法基本上採用與建構函數相同的屬性。您不需要傳入 指標,因為它已知。
metric.createAlarm(this, 'Alarm', {
threshold: 100,
evaluationPeriods: 3,
datapointsToAlarm: 2,
});