Я хочу настроить Lambda, используя Node.js для запроса Cloudwatch и получить среднее число вызовов, используемых нашими Lambdas, цель в том, чтобы, когда мы приблизились к достижению нашего предела количества вызовов, мы инициировали бы уведомление дляпредупредите нас, когда мы достигнем этого предела.
Я могу запросить данные CW, но когда я запускаю скрипт, я не получаю никаких данных, возвращаемых за определенный период времени.Я не уверен, что я делаю неправильно в моем сценарии.
const AWS = require('aws-sdk');
AWS.config.update({region: 'us-east-1'});
const cloudwatch = new AWS.CloudWatch();
const webhook = require('send-webhook');
const SSO_URL = "URL1";
const URLS = ['webhook'];
//var endTime = time.Now();
//var duration = time.ParseDuration("-5m");
//var startTime = endTime.Add(duration);
var params = {
EndTime: '2019-06-04T08:45:00Z',
MetricDataQueries: [
{
Id: 'concurrencycount',
Label: 'Average concurrency',
MetricStat: {
Metric: {
Dimensions: [
{
Name: 'FunctionName',
Value: 'LambdaName'
},
],
MetricName: 'Invocations',
Namespace: 'AWS/Lambda'
},
Period: '300',
Stat: 'Average',
Unit: 'Count'
},
ReturnData: false
},
],
StartTime: '2019-06-04T08:00:00Z',
//ScanBy: TimestampDescending
};
//exports.handler = function(event, context){
cloudwatch.getMetricData(params, function(err, data) {
if (err) console.log(err, err.stack);
else console.log(data)
})
//}
Когда код выполняется, он не возвращает никаких данных, все, что я вижу, это вывод ниже, который я вижу.Я пробовал с различными функциями лямбда, но я получаю тот же результат.Я не уверен, что я делаю неправильно с вызовом API для возврата этих данных.
{ ResponseMetadata: { RequestId: '291f9049-86ce-11e9-819c-fb65a0786d4d' },
MetricDataResults: [],
Messages: [] }