aws lambda函数如何使用响应来执行计算
aws lambda function how to use responses to perform calculation
尝试创建一个lambda函数,该函数列出标记的ec2和标记的rds,然后执行操作。这是我第一次使用javascript,非常感谢您的帮助。
请参阅下面的示例
var aws = require('aws-sdk');
var ec2 = new aws.EC2();
var rds = new aws.RDS();
aws.config.region = 'us-east-1';
exports.handler = function(event,context) {
if (event) {
console.log(event.id);
}
//setup params for rds call
var rdsparams = {
DBInstanceIdentifier: 'master',
};
//setup params for ec2 call
var ec2params = {
Filters: [
{
Name: 'tag:role',
Values: [
'app'
],
}
]
};
//Get ec2 instances with app tag, may need to add a condition on running so pulled it into hash
ec2.describeInstances(ec2params, function(err, appdata) {
if (err) {
console.log(err);
return;
}
else {
var apparray={};
for(var i = 0; i < appdata.Reservations.length; i++) {
var ins = appdata.Reservations[i].Instances[0];
var id = ins.InstanceId;
var state = ins.State.Name;
apparray[id]=state;
}
console.log(apparray);
context.succeed(apparray);
}
});
rds.describeDBInstances(rdsparams, function(err, data) {
if (err) {
console.log(err, err.stack);
return;
}
else {
var rdsarray={};
var rdsarray=(data);
console.log(rdsarray);
var ins=rdsarray[0];
var name = ins.ReadReplicaDBInstanceIdentifiers[0];
rdsarray[replicant]=name;
}
context.succeed(rdsarray);
});
//context.done();
};
我想从函数中返回已过滤的(apparay)和(rdsarray),并在脚本主体中对此进行计算。关于如何做到这一点的任何想法。
类似的东西
var replicas=rdsarray.length,例如
提前感谢
var aws = require('aws-sdk');
var ec2 = new aws.EC2();
var rds = new aws.RDS();
aws.config.region = 'us-east-1';
exports.handler = function(event, context) {
if (event) {
console.log(event.id);
}
//setup params for rds call
var rdsparams = {
DBInstanceIdentifier: 'master',
};
//setup params for ec2 call
var ec2params = {
Filters: [{
Name: 'tag:role',
Values: [
'app'
],
}]
};
//Get ec2 instances with app tag, may need to add a condition on running so pulled it into hash
ec2.describeInstances(ec2params, function(err, appdata) {
if (err)
return context.done(err, null);
var apparray = {};
for (var i = 0; i < appdata.Reservations.length; i++) {
var ins = appdata.Reservations[i].Instances[0];
var id = ins.InstanceId;
var state = ins.State.Name;
apparray[id] = state;
}
console.log(apparray);
var resultData = {};
resultData.apparray = apparray;
rds.describeDBInstances(rdsparams, function(err, data) {
if (err)
return context.done(err, null);
var rdsarray = {};
var rdsarray = (data);
console.log(rdsarray);
var ins = rdsarray[0];
var name = ins.ReadReplicaDBInstanceIdentifiers[0];
rdsarray[replicant] = name;
resultData.rdsarray = rdsarray;
context.done(null, resultData);
});
});
};
然后在代码中调用lambda函数
var lambda = new sdk.Lambda();
var params = {
FunctionName: 'arn:aws:lambda:us-west-2:1541546477777:function:MyFunction',
Payload: JSON.stringify(/*your params here*/)
};
lambda.invoke(params, function(err, data) {
if (err) {
console.log('error ===', err);
return ;
}
var lambdaData = JSON.parse(data.Payload);
// do your stuff here
});
这是你需要的吗?它可能坏了,但我希望你知道它的想法
相关文章:
- 从表单中获取用户输入执行计算(操作顺序)并输出回该表单
- NumericTextBox-当用户键入数字时执行JS计算.能做到吗
- 对表单输入执行计算
- JQuery/JavaScript:遍历表单字段,执行计算,然后提交
- 如何使用文本下拉列表中的绑定值来执行计算
- 使挖空计算订阅不在初始执行路径中的可观察量
- JavaScript.为字母分配数字值,并根据用户的字母输入执行计算
- 使用表单数据执行计算并将其解析回表单
- 如何使用 CheckBox=“true” 执行计算
- 未执行计算可观察量
- 通过json对数据执行计算
- 从<td>对行id指定的同一表行执行计算
- aws lambda函数如何使用响应来执行计算
- 服务器级SDK,可以加载PDF文件并执行计算和验证代码片段
- 接受用户输入,在javascript中执行计算
- 在Javascript中对Integer数组执行计算
- 如何对javascript对象的属性执行计算并将其打印出来
- 对动态添加的行执行计算
- jQuery获取两个不同滑块的值并执行计算
- JavaScript:哪台机器执行计算