AWS Lambda Cleaner - Cleanup resources on AWS Lambda container shutdown (timeout and/or spin-down).
⚠️ You have500 milliseconds
to complete all of your callbacks before function shutdown.
You can add leanser
package into your AWS Lambda function either by NPM package or by AWS Lambda layer as shown below:
To install the middleware, you can use NPM:
npm install --save leanser
You can also add leanser
as layer into your AWS Lambda function.
arn:aws:lambda:${region}:273094347961:layer:leanser:${layer-version}
Latest layer version: (badge powered by Globadge serverless)
Note: In the ARN above, you need to replace ${region}
with the actual AWS region you deployed your AWS Lambda function.
const { register } = require('leanser');
async function myCleaner() {
// Run your custom cleanup logic (close connections, etc ...)
};
async function myAnotherCleaner() {
// Run your another custom cleanup logic (close connections, etc ...)
};
register(myCleaner, myAnotherCleaner);
exports.handler = async function(event, context) {
// Do something meaningful
return {
statusCode: 200,
}
};
-
Optionally, you can disable/enable cleaner.
-
By environment variable:
Set
LEANSER_ENABLE
environment variable tofalse
to disable cleaner or totrue
(which is default) to enable cleaner back.
LEANSER_ENABLE=false
-
By environment variable:
Set
Everyone is very welcome to contribute to this repository. Feel free to raise issues or to submit Pull Requests.
Licensed under MIT License.