Création d'alarmes sur Amazon CloudWatch - AWS SDK for JavaScript

Nous avons annoncé la sortie end-of-support de la AWS SDK for JavaScript v2. Nous vous recommandons de migrer vers la AWS SDK for JavaScript version 3. Pour les dates, les détails supplémentaires et les informations sur la façon de migrer, reportez-vous à l'annonce associée.

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Création d'alarmes sur Amazon CloudWatch

JavaScript code example that applies to Node.js execution

Cet exemple de code Node.js présente :

  • Comment récupérer des informations de base sur vos CloudWatch alarmes.

  • Comment créer et supprimer une CloudWatch alarme

Scénario

Une alarme surveille une seule métrique pendant une durée que vous définissez et exécute une ou plusieurs actions en fonction de la valeur de la métrique par rapport à un seuil donné pendant un certain nombre de périodes.

Dans cet exemple, plusieurs modules Node.js sont utilisés pour créer des alarmes dans CloudWatch. Les modules Node.js utilisent le SDK pour créer des alarmes JavaScript à l'aide des méthodes suivantes de la classe AWS.CloudWatch client :

Pour plus d'informations sur les CloudWatch alarmes, consultez la section Création d' CloudWatch alarmes Amazon dans le guide de CloudWatch l'utilisateur Amazon.

Tâches prérequises

Pour configurer et exécuter cet exemple, vous devez d'abord :

Description des alarmes

Créez un module Node.js nommé cw_describealarms.js. Veillez à configurer le kit SDK comme indiqué précédemment. Pour y accéder CloudWatch, créez un objet AWS.CloudWatch de service. Créez un objet JSON qui contiendra les paramètres nécessaires à la récupération des descriptions d'alarmes, en limitant les alarmes renvoyées à celles dont l'état est INSUFFICIENT_DATA. Appelez ensuite la méthode describeAlarms de l'objet de service AWS.CloudWatch.

// Load the AWS SDK for Node.js var AWS = require("aws-sdk"); // Set the region AWS.config.update({ region: "REGION" }); // Create CloudWatch service object var cw = new AWS.CloudWatch({ apiVersion: "2010-08-01" }); cw.describeAlarms({ StateValue: "INSUFFICIENT_DATA" }, function (err, data) { if (err) { console.log("Error", err); } else { // List the names of all current alarms in the console data.MetricAlarms.forEach(function (item, index, array) { console.log(item.AlarmName); }); } });

Pour exécuter l'exemple, entrez ce qui suit dans la ligne de commande.

node cw_describealarms.js

Cet exemple de code se trouve ici sur GitHub.

Création d'une alarme pour une CloudWatch métrique

Créez un module Node.js nommé cw_putmetricalarm.js. Veillez à configurer le kit SDK comme indiqué précédemment. Pour y accéder CloudWatch, créez un objet AWS.CloudWatch de service. Créez un objet JSON pour les paramètres nécessaires à la création d'une alarme basée sur une métrique, en l'occurrence l'utilisation du processeur d'une instance Amazon EC2. Les paramètres restants sont définis de façon à déclencher l'alarme lorsque la métrique dépasse un seuil de 70 %. Appelez ensuite la méthode describeAlarms de l'objet de service AWS.CloudWatch.

// Load the AWS SDK for Node.js var AWS = require("aws-sdk"); // Set the region AWS.config.update({ region: "REGION" }); // Create CloudWatch service object var cw = new AWS.CloudWatch({ apiVersion: "2010-08-01" }); var params = { AlarmName: "Web_Server_CPU_Utilization", ComparisonOperator: "GreaterThanThreshold", EvaluationPeriods: 1, MetricName: "CPUUtilization", Namespace: "AWS/EC2", Period: 60, Statistic: "Average", Threshold: 70.0, ActionsEnabled: false, AlarmDescription: "Alarm when server CPU exceeds 70%", Dimensions: [ { Name: "InstanceId", Value: "INSTANCE_ID", }, ], Unit: "Percent", }; cw.putMetricAlarm(params, function (err, data) { if (err) { console.log("Error", err); } else { console.log("Success", data); } });

Pour exécuter l'exemple, entrez ce qui suit dans la ligne de commande.

node cw_putmetricalarm.js

Cet exemple de code se trouve ici sur GitHub.

Suppression d'une alarme

Créez un module Node.js nommé cw_deletealarms.js. Veillez à configurer le kit SDK comme indiqué précédemment. Pour y accéder CloudWatch, créez un objet AWS.CloudWatch de service. Créez un objet JSON contenant les noms des alarmes à supprimer. Appelez ensuite la méthode deleteAlarms de l'objet de service AWS.CloudWatch.

// Load the AWS SDK for Node.js var AWS = require("aws-sdk"); // Set the region AWS.config.update({ region: "REGION" }); // Create CloudWatch service object var cw = new AWS.CloudWatch({ apiVersion: "2010-08-01" }); var params = { AlarmNames: ["Web_Server_CPU_Utilization"], }; cw.deleteAlarms(params, function (err, data) { if (err) { console.log("Error", err); } else { console.log("Success", data); } });

Pour exécuter l'exemple, entrez ce qui suit dans la ligne de commande.

node cw_deletealarms.js

Cet exemple de code se trouve ici sur GitHub.