Obtenir des métriques auprès d'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.

Obtenir des métriques auprès d'Amazon CloudWatch

JavaScript code example that applies to Node.js execution

Cet exemple de code Node.js présente :

  • Comment récupérer une liste de CloudWatch métriques publiées.

  • Comment publier des points de données dans CloudWatch des métriques

Scénario

Les métriques sont des données sur les performances de vos systèmes. Vous pouvez activer la surveillance détaillée de certaines ressources, telles que vos instances Amazon EC2 ou vos propres indicateurs d'application.

Dans cet exemple, une série de modules Node.js sont utilisés pour obtenir des métriques CloudWatch et envoyer des événements à Amazon CloudWatch Events. Les modules Node.js utilisent le SDK pour JavaScript obtenir des métriques CloudWatch en utilisant les méthodes suivantes de la classe CloudWatch client :

Pour plus d'informations sur CloudWatch les métriques, consultez la section Utilisation d'Amazon CloudWatch Metrics dans le guide de CloudWatch l'utilisateur Amazon.

Tâches prérequises

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

Affichage de la liste des métriques

Créez un module Node.js nommé cw_listmetrics.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 paramètres requis pour répertorier les métriques dans l'espace de noms AWS/Logs. Appelez la méthode listMetrics pour répertorier la métrique IncomingLogEvents.

// 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 = { Dimensions: [ { Name: "LogGroupName" /* required */, }, ], MetricName: "IncomingLogEvents", Namespace: "AWS/Logs", }; cw.listMetrics(params, function (err, data) { if (err) { console.log("Error", err); } else { console.log("Metrics", JSON.stringify(data.Metrics)); } });

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

node cw_listmetrics.js

Cet exemple de code se trouve ici sur GitHub.

Envoi de métriques personnalisées

Créez un module Node.js nommé cw_putmetricdata.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 paramètres requis afin d'envoyer un point de données pour la métrique personnalisée PAGES_VISITED. Appelez la méthode putMetricData.

// 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" }); // Create parameters JSON for putMetricData var params = { MetricData: [ { MetricName: "PAGES_VISITED", Dimensions: [ { Name: "UNIQUE_PAGES", Value: "URLS", }, ], Unit: "None", Value: 1.0, }, ], Namespace: "SITE/TRAFFIC", }; cw.putMetricData(params, function (err, data) { if (err) { console.log("Error", err); } else { console.log("Success", JSON.stringify(data)); } });

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

node cw_putmetricdata.js

Cet exemple de code se trouve ici sur GitHub.