Atur CloudWatch alarm - AWS Cloud Development Kit (AWS CDK) v2

Ini adalah Panduan Pengembang AWS CDK v2. CDKV1 yang lebih lama memasuki pemeliharaan pada 1 Juni 2022 dan mengakhiri dukungan pada 1 Juni 2023.

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Atur CloudWatch alarm

Gunakan paket aws-cloudwatch untuk menyiapkan alarm Amazon CloudWatch pada metrik. CloudWatch Anda dapat menggunakan metrik yang telah ditentukan atau membuat metrik Anda sendiri.

Gunakan metrik yang ada

Banyak modul AWS Construct Library memungkinkan Anda menyetel alarm pada metrik yang ada dengan meneruskan nama metrik ke metode kenyamanan pada instance objek yang memiliki metrik. Misalnya, dengan SQS antrian Amazon, Anda bisa mendapatkan metrik ApproximateNumberOfMessagesVisibledari metode metrik () antrian:

TypeScript
const metric = queue.metric("ApproximateNumberOfMessagesVisible");
JavaScript
const metric = queue.metric("ApproximateNumberOfMessagesVisible");
Python
metric = queue.metric("ApproximateNumberOfMessagesVisible")
Java
Metric metric = queue.metric("ApproximateNumberOfMessagesVisible");
C#
var metric = queue.Metric("ApproximateNumberOfMessagesVisible");

Buat metrik Anda sendiri

Buat metrik Anda sendiri sebagai berikut, di mana nilai namespace harus seperti AWS/SQSuntuk antrian AmazonSQS. Anda juga perlu menentukan nama dan dimensi metrik Anda:

TypeScript
const metric = new cloudwatch.Metric({ namespace: 'MyNamespace', metricName: 'MyMetric', dimensionsMap: { MyDimension: 'MyDimensionValue' } });
JavaScript
const metric = new cloudwatch.Metric({ namespace: 'MyNamespace', metricName: 'MyMetric', dimensionsMap: { MyDimension: 'MyDimensionValue' } });
Python
metric = cloudwatch.Metric( namespace="MyNamespace", metric_name="MyMetric", dimensionsMap=dict(MyDimension="MyDimensionValue") )
Java
Metric metric = Metric.Builder.create() .namespace("MyNamespace") .metricName("MyMetric") .dimensionsMap(java.util.Map.of( // Java 9 or later "MyDimension", "MyDimensionValue")) .build();
C#
var metric = new Metric(this, "Metric", new MetricProps { Namespace = "MyNamespace", MetricName = "MyMetric", Dimensions = new Dictionary<string, object> { { "MyDimension", "MyDimensionValue" } } });

Buat alarm

Setelah Anda memiliki metrik, baik yang sudah ada atau yang Anda tentukan, Anda dapat membuat alarm. Dalam contoh ini, alarm dinaikkan ketika ada lebih dari 100 metrik Anda dalam dua dari tiga periode evaluasi terakhir. Anda dapat menggunakan perbandingan seperti kurang dari pada alarm Anda melalui properti. comparisonOperator G reater-than-or-equal -to adalah AWS CDK default, jadi kita tidak perlu menentukannya.

TypeScript
const alarm = new cloudwatch.Alarm(this, 'Alarm', { metric: metric, threshold: 100, evaluationPeriods: 3, datapointsToAlarm: 2, });
JavaScript
const alarm = new cloudwatch.Alarm(this, 'Alarm', { metric: metric, threshold: 100, evaluationPeriods: 3, datapointsToAlarm: 2 });
Python
alarm = cloudwatch.Alarm(self, "Alarm", metric=metric, threshold=100, evaluation_periods=3, datapoints_to_alarm=2 )
Java
import software.amazon.awscdk.services.cloudwatch.Alarm; import software.amazon.awscdk.services.cloudwatch.Metric; Alarm alarm = Alarm.Builder.create(this, "Alarm") .metric(metric) .threshold(100) .evaluationPeriods(3) .datapointsToAlarm(2).build();
C#
var alarm = new Alarm(this, "Alarm", new AlarmProps { Metric = metric, Threshold = 100, EvaluationPeriods = 3, DatapointsToAlarm = 2 });

Cara alternatif untuk membuat alarm menggunakan metrik's createAlarm() metode, yang pada dasarnya mengambil properti yang sama dengan Alarm konstruktor. Anda tidak perlu memasukkan metrik, karena sudah diketahui.

TypeScript
metric.createAlarm(this, 'Alarm', { threshold: 100, evaluationPeriods: 3, datapointsToAlarm: 2, });
JavaScript
metric.createAlarm(this, 'Alarm', { threshold: 100, evaluationPeriods: 3, datapointsToAlarm: 2, });
Python
metric.create_alarm(self, "Alarm", threshold=100, evaluation_periods=3, datapoints_to_alarm=2 )
Java
metric.createAlarm(this, "Alarm", new CreateAlarmOptions.Builder() .threshold(100) .evaluationPeriods(3) .datapointsToAlarm(2) .build());
C#
metric.CreateAlarm(this, "Alarm", new CreateAlarmOptions { Threshold = 100, EvaluationPeriods = 3, DatapointsToAlarm = 2 });