Creación de alarmas en Amazon CloudWatch - AWS SDK for JavaScript

LaAWS SDK for JavaScript versión 3 (v3) es una reescritura de la versión 2 con algunas funciones nuevas y excelentes, incluida la arquitectura modular. Para obtener más información, consulte la Guía para desarrolladores de la versiónAWS SDK for JavaScript 3.

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Creación de alarmas en Amazon CloudWatch

JavaScript code example that applies to Node.js execution

Este ejemplo de código de Node.js muestra:

  • Cómo recuperar información básica acerca de sus alarmas de CloudWatch.

  • Cómo crear y eliminar una alarma de CloudWatch.

El escenario

Una alarma vigila una única métrica durante el periodo especificado y realiza una o varias acciones en función del valor de la métrica relativo a un determinado umbral durante una serie de periodos de tiempo.

En este ejemplo se van a utilizar una serie de módulos de Node.js para crear alarmas en CloudWatch. Los módulos de Node.js usan el SDK para JavaScript para crear alarmas mediante estos métodos delAWS.CloudWatchclase de cliente:

Para obtener más información acerca de las alarmas de CloudWatch, consulteCreación de alarmas de Amazon CloudWatchen laGuía del usuario de Amazon CloudWatch.

Tareas previas necesarias

Para configurar y ejecutar este ejemplo, primero debe completar estas tareas:

Descripción de alarmas

Cree un módulo de Node.js con el nombre de archivo cw_describealarms.js. Asegúrese de configurar el SDK tal y como se ha indicado anteriormente. Para acceder a CloudWatch, cree unAWS.CloudWatchobjeto de servicio. Cree un objeto JSON para contener los parámetros para recuperar descripciones de alarmas y limitar el número de alarmas a aquellas que tienen el estado INSUFFICIENT_DATA. Luego llame al método describeAlarms del objeto de servicio 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); }); } });

Para ejecutar el ejemplo, escriba lo siguiente en la línea de comandos.

node cw_describealarms.js

Este código de muestra se puede encontrar aquí en GitHub.

Creación de una alarma para una métrica de CloudWatch

Cree un módulo de Node.js con el nombre de archivo cw_putmetricalarm.js. Asegúrese de configurar el SDK tal y como se ha indicado anteriormente. Para acceder a CloudWatch, cree unAWS.CloudWatchobjeto de servicio. Cree un objeto JSON para los parámetros necesarios para crear una alarma basada en una métrica, en este caso, el uso de CPU de una instancia Amazon EC2. Los parámetros restantes se establecen para que la alarma se desencadene cuando la métrica supere un umbral del 70 por ciento. Luego llame al método describeAlarms del objeto de servicio 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); } });

Para ejecutar el ejemplo, escriba lo siguiente en la línea de comandos.

node cw_putmetricalarm.js

Este código de muestra se puede encontrar aquí en GitHub.

Eliminación de una alarma

Cree un módulo de Node.js con el nombre de archivo cw_deletealarms.js. Asegúrese de configurar el SDK tal y como se ha indicado anteriormente. Para acceder a CloudWatch, cree unAWS.CloudWatchobjeto de servicio. Cree un objeto JSON para que contenga los nombres de las alarmas que desea eliminar. Luego llame al método deleteAlarms del objeto de servicio 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); } });

Para ejecutar el ejemplo, escriba lo siguiente en la línea de comandos.

node cw_deletealarms.js

Este código de muestra se puede encontrar aquí en GitHub.