在Lambda函数中更新AWS Systems Manager Parameter Store之后,会发现Lambda函数挂起。这可能是由于Lambda函数未能正确关闭Systems Manager Parameter Store会话而导致的。为了解决这个问题,可以使用AWS SDK for Node.js中提供的部分功能来正确关闭会话。具体而言,可以使用以下代码示例来关闭会话:
const AWS = require('aws-sdk');
const ssm = new AWS.SSM();
exports.handler = async (event) => {
const param = {
Name: 'parameter_name',
WithDecryption: true
};
const data = await ssm.getParameter(param).promise();
//Use data
await ssm.cancelCommand({
CommandId: data.CommandId
}).promise();
console.log('Session closed');
const response = {
statusCode: 200,
body: JSON.stringify('Session closed'),
};
return response;
};
这段代码通过先获取参数值,然后使用cancelCommand()方法关闭会话。 这将释放资源并确保当前会话已正确关闭,从而防止Lambda函数挂起。