從 Amazon 獲取指標 CloudWatch - AWS SDK for JavaScript

我們宣布了即將推 end-of-support 出的 AWS SDK for JavaScript v2。我們建議您移轉至 AWS SDK for JavaScript v3。有關日期,其他詳細信息以及如何遷移的信息,請參閱鏈接的公告。

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

從 Amazon 獲取指標 CloudWatch

JavaScript code example that applies to Node.js execution

這個 Node.js 程式碼範例會說明:

  • 如何擷取已發佈 CloudWatch 量度清單。

  • 如何將資料點發佈至 CloudWatch 指標。

使用案例

指標是有關您系統效能的資料。您可以啟用某些資源的詳細監控,例如 Amazon EC2 執行個體或您自己的應用程式指標。

在此範例中,使用一系列 Node.js 模組來取得指標,以 CloudWatch 及將事件傳送至 Amazon CloudWatch 事件。Node.js 模組會使用 SDK 來取得 JavaScript 使用 CloudWatch用CloudWatch戶端類別的下列方法的指標:

如需有關指 CloudWatch 標的詳細資訊,請參閱 Amazon 使用者指南中的使 CloudWatch 用 Amazon 指 CloudWatch

先決條件任務

若要設定和執行此範例,您必須先完成這些任務:

列出指標

以檔名 cw_listmetrics.js 建立一個 Node.js 模組。請務必依前述的內容來設定軟體開發套件。若要存取 CloudWatch,請建立AWS.CloudWatch服務物件。建立 JSON 物件,其包含列出 AWS/Logs 命名空間內指標所需的參數。呼叫 listMetrics 方法來列出 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)); } });

若要執行範例,請在命令列中輸入以下內容。

node cw_listmetrics.js

您可以在這裡找到此範例程式碼 GitHub。

提交自訂指標

以檔名 cw_putmetricdata.js 建立一個 Node.js 模組。請務必依前述的內容來設定軟體開發套件。若要存取 CloudWatch,請建立AWS.CloudWatch服務物件。建立 JSON 物件,其中包含提交 PAGES_VISITED 自訂指標的資料點所需的參數。呼叫 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)); } });

若要執行範例,請在命令列中輸入以下內容。

node cw_putmetricdata.js

您可以在這裡找到此範例程式碼 GitHub。