Giter VIP home page Giter VIP logo

sqs-dlq-monitoring's Introduction

Hi ๐Ÿ‘‹, I'm Estian Yssel

Lover of all things AWS and DevOps

eyssel

Connect with me:

https://www.linkedin.com/in/estian-yssel/

Languages and Tools:

aws bash docker express git go graphql javascript jenkins jest kubernetes linux nodejs postgresql react typescript

eyssel

eyssel

sqs-dlq-monitoring's People

Contributors

eyssel avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar

Forkers

scottscovell

sqs-dlq-monitoring's Issues

Allow configuration of DLQ via props

Would it be possible to allow provisioning of DLQ properties similar to the main queue properties (or reuse props from the main queue)?

A simple use case: enforceSSL
This can be set for the monitored queue via the QueueProps, but is not passed on to the DLQ. Only option at the moment is to create a DLQ outside of the construct and provide that, which sort of defeats its purpose / usefulness.

Although the CDK defaults to false, from a security perspective enforcing SSL should perhaps even be the default.

Our use case can be found here.

Consider usage of cdk-nag

cdk-nag is very useful when testing constructs against AWS best practises and externals standards.
Standards compliance and security best practises are crucial for our production workloads.

Issues #89 and #90 were flagged by cdk-nag as violating the AWS solutions rules.

Improve CDK Tests

Improve tests by testing resource properties using template.hasResourceProperties

test('SQS Queues created', () => {
    template.resourceCountIs('AWS::SQS::Queue', 2);
    template.hasResourceProperties('AWS::SQS::Queue', {
      QueueName: 'TestQueueName',
      RedrivePolicy: {
        deadLetterTargetArn: Match.anyValue(),
        maxReceiveCount: 3,
      },
    });

    template.hasResourceProperties('AWS::SQS::Queue', {
      QueueName: 'TestQueueName-dlq',
    });
  });

  test('SQS Queue configured with SSL', () => {
    template.resourceCountIs('AWS::SQS::QueuePolicy', 2);
    template.hasResourceProperties('AWS::SQS::QueuePolicy', {
      PolicyDocument: Match.objectLike({
        Statement: [
          {
            Action: 'sqs:*',
            Effect: 'Deny',
            Condition: {
              Bool: {
                'aws:SecureTransport': 'false',
              },
            },
          },
        ],
      }),
    });
  });

Source: https://github.com/umccr/orcabus/blob/f589d49fdbc660440cba2a29534922ce8eeeccdc/test/stateful/icaEventPipeConstruct.test.ts

Fix mistakes on README

Spelling:
"Be sure to check you Spam folder as well."

Be more accurate in the description:
"An AWS CDK construct to wrap AWS Simple-Queue Service (SQS) Dead-Letter Queues with a CloudWatch alarm to notify if the number of messages cross a certain threshold."

Improve description:
"A Bot user token..."

Custom Lambda Handler

Investigate functionality for users to somehow add code to the execution of the Lambda Function to allow for maximum customisation.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.