как изменить эту функцию с лямбды на rds aurora
У меня есть эта лямбда-функция, и, как вы можете видеть, она подключается к базам данных Dynamo, мне нужно сделать эту же функцию для подключения к базам данных RDS aurora, что мне нужно изменить?
'use strict;
const uuid = require('uuid');
const AWS = require('aws-sdk');
const logger = require("../components/logger.js");
const errorHandlerModule = require("../components/error-handler.js");
const dynamoDb = new AWS.DynamoDB.DocumentClient();
module.exports.create = (event, context, callback) => {
// Initialization
const errorHandler = errorHandlerModule();
logger.init();
const timestamp = new Date().getTime();
const data = JSON.parse(event.body);
if (typeof data.text !== 'string') {
logger.error('Validation Failed');
callback(null, {
statusCode: 400,
headers: { 'Content-Type': 'text/plain' },
body: 'Couldn\'t create the todo item.',
});
return;
}
const params = {
TableName: process.env.DYNAMODB_TABLE,
Item: {
id: uuid.v1(),
text: data.text,
checked: false,
createdAt: timestamp,
updatedAt: timestamp,
},
};
// write the todo to the database
dynamoDb.put(params, (error) => {
// handle potential errors
if (error) {
logger.error(error);
callback(null, {
statusCode: error.statusCode || 501,
headers: { 'Content-Type': 'text/plain' },
body: 'Couldn\'t create the todo item.',
});
return;
}
// create a response
const response = {
statusCode: 200,
body: JSON.stringify(params.Item),
};
callback(null, response);
});
};
1 ответ
Следуйте этому руководству:https://docs.aws.amazon.com/lambda/latest/dg/services-rds-tutorial.html
Имейте в виду, что, поскольку RDS существует в вашем VPC, вам необходимо подключить Lambda к вашему VPC. И для этого ваша исполнительная роль должна будет добавить AWSLambdaVPCAccessExecutionRole.