У меня есть NodeJS 12.x Лямбда, как это, и я использую middy. js для подключения к кластеру RedShift, вот выдержка:
const middy = require('@middy/core')
const dbManager = require('@middy/db-manager');
const lambda = middy(async (event, context) => {
const { db } = context;
const records = await db.distinct('XXX').from('YYY');
// print result
console.log(records);
// return result
return {
'statusCode': 200,
'body': JSON.stringify(records)
}
});
lambda
.use(dbManager({
config: {
client: 'pg',
connection: {
host: 'XXX',
port: '1111',
schema: 'public',
user: 'XXX',
password: 'XXX',
database: 'XXX'
}
}
}));
module.exports = { lambda }
Когда я запускаю это Лямбда-результат получен (т.е. console.log
распечатывает результаты), но функция остается в ожидании, пока не истечет время ожидания. Я почти уверен, что мне чего-то не хватает с механизмом асинхронного ожидания / ожидания, но я не знаю, что и где мне нужно изменить.