serverless-offline-sqs-dlq
Version:
Enable Dead-Letter-Queue with AWS λ and SQS locally when developing your Serverless project
51 lines (38 loc) • 1.69 kB
Markdown
# serverless-offline-sqs-dlq
This Serverless-offline plugin brings [Dead-Letter Queues](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-dead-letter-queues.html) to AWS λ and SQS queue on your local machine. It extends [serverless-offline-sqs](https://github.com/CoorpAcademy/serverless-plugins/tree/master/packages/serverless-offline-sqs) and thus depends on it.
> Warning: Serverless [doesn't support yet SQS for DLQ](https://serverless.com/framework/docs/providers/aws/guide/functions#dlq-with-sqs). After the deployment on AWS, the DLQ needs to be set on AWS (either manually or by a script).
## Installation
First, ensure to have [serverless-offline-sqs](https://github.com/CoorpAcademy/serverless-plugins/tree/master/packages/serverless-offline-sqs) included in your project:
```sh
npm install serverless-offline-sqs serverless-offline-sqs-dlq
```
Then inside your project's `serverless.yml` file, add following entries to the plugins section before `serverless-offline` (and after `serverless-webpack` if presents).
```yml
plugins:
- serverless-webpack
- serverless-offline-sqs
- serverless-offline-sqs-dlq
- serverless-offline
```
## Configure
Usage:
```yml
functions:
basicLambda:
handler: index.basicLambda
events:
- sqs: arn:aws:sqs:eu-west-1:XXXXXXX:basicLambdaTriggerQueue
handleErrorLambda:
handler: index.handleErrorLambda
events:
- sqs: arn:aws:sqs:eu-west-1:XXXXXXX:handleErrorLambdaQueue
```
Specify in the `custom` section which function handles errors:
```yml
custom:
(...)
serverless-offline-sqs-dlq:
basicLambda:
onError: handleErrorLambda
maxReceiveCount: 3
```