Einen CloudWatch Alarm festlegen - AWS Cloud Development Kit (AWS CDK) v2

Dies ist der AWS CDK v2-Entwicklerhandbuch. Das ältere CDK v1 wurde am 1. Juni 2022 in die Wartung aufgenommen und der Support wurde am 1. Juni 2023 eingestellt.

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Einen CloudWatch Alarm festlegen

Verwenden Sie das aws-cloudwatch-Paket, um Amazon- CloudWatch Alarme für CloudWatch Metriken einzurichten. Sie können vordefinierte Metriken verwenden oder Ihre eigenen erstellen.

Verwenden einer vorhandenen Metrik

Mit vielen Modulen AWS der Construct Library können Sie einen Alarm für eine vorhandene Metrik festlegen, indem Sie den Namen der Metrik an eine Convenience-Methode auf einer Instance eines Objekts mit Metriken übergeben. Bei einer Amazon SQS-Warteschlange können Sie beispielsweise die Metrik ApproximateNumberOfMessagesVisible aus der Metrik()-Methode der Warteschlange abrufen:

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");

Erstellen Ihrer eigenen Metrik

Erstellen Sie Ihre eigene Metrik wie folgt, wobei der Namespace-Wert in etwa AWS/SQS für eine Amazon SQS-Warteschlange sein sollte. Sie müssen auch den Namen und die Dimension Ihrer Metrik angeben:

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" } } });

Erstellen des Alarms

Sobald Sie eine Metrik haben, entweder eine vorhandene oder eine, die Sie definiert haben, können Sie einen Alarm erstellen. In diesem Beispiel wird der Alarm ausgelöst, wenn in zwei der letzten drei Auswertungszeiträume mehr als 100 Ihrer Metrik vorhanden sind. Sie können Vergleiche wie „weniger als“ in Ihren Alarmen über die -comparisonOperatorEigenschaft verwenden. G reater-than-or-equal-to ist die AWS CDK Standardeinstellung, daher müssen wir sie nicht angeben.

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 });

Eine alternative Möglichkeit, einen Alarm zu erstellen, ist die Verwendung der createAlarm ()-Methode der Metrik, die im Wesentlichen dieselben Eigenschaften wie der Alarm Konstruktor hat. Sie müssen die Metrik nicht übergeben, da sie bereits bekannt ist.

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 });