By using AWS re:Post, you agree to the Terms of Use

SAM deployment of lambda (EventSource MQTT) fails with invalid parameter VIRTUAL_HOST

0

I am struggeling with an issue which appeared out of a sudden between two deployments of our application.

What we are doing is. There is a lambda function which has an EventSource configured. In this case it is a MessageQueue (MQ) Event, listening to a AmazonMQ RabbitMQ Broker. It worked fine for many months but with todays deployment it failed.

Last working deployment: 2022-02-02 11:06:16 UTC+0100

Error:

Resource handler returned message: "Invalid request provided: Invalid parameters: VIRTUAL_HOST (Service: Lambda, Status Code: 400, Request ID:, Extended Request ID: null)" (RequestToken: , HandlerErrorCode: InvalidRequest)

Template excerpt:

    ConsumerFunction:
    Type: 'AWS::Serverless::Function'
    Properties:
        CodeUri: .
        Events:
            MQEvent:
                Type: MQ
                Properties:
                    BatchSize: 120
                    Enabled: true
                    Broker: 'arn:aws:mq:us-east-1:11111:broker:cwv-broker:11111'
                    Queues:
                        - 'consumer-queue-name'
                    SourceAccessConfigurations:
                        - Type: BASIC_AUTH
                          URI: 'arn:aws:secretsmanager:us-east-1:1111:secret:global-secrets/rabbitmq-broker-credentials'
                        - Type: VIRTUAL_HOST
                          URI: '/consumervhost'
        FunctionName: 'consumer-v1-prod'
        Handler: handler/consumer.php
        Layers:
            - !Sub 'arn:aws:lambda:${AWS::Region}:209497400698:layer:php-80:16'
            - !Sub 'arn:aws:lambda:${AWS::Region}:403367587399:layer:redis-php-80:11'
        MemorySize: 250
        Policies:
            -
                AWSSecretsManagerGetSecretValuePolicy:
                    SecretArn: 'arn:aws:secretsmanager:us-east-1:11111:secret:global-secrets/rabbitmq-broker-credentials'
            -
                VPCAccessPolicy: {}
            - !Ref CwvMqAccessPolicy
        ReservedConcurrentExecutions: 5
        Runtime: provided.al2
        Timeout: 900
        VpcConfig:
            SecurityGroupIds:
                - !ImportValue MainVPC-DefaultSecurityGroup
            SubnetIds:
                - !ImportValue MainVPC-SubnetPrivateA
                - !ImportValue MainVPC-SubnetPrivateB
    Parameters:
        RetentionDays: 1

Sam version: SAM CLI, version 1.37.0

Deployment script:

sam package \
    --output-template-file /tmp/deploy-stack.yaml \
    --s3-bucket "deployment-resources" \
    --profile "$AWS_PROFILE"

sam deploy \
    --template-file /tmp/deploy-stack.yaml \
    --s3-bucket "deployment-resources" \
    --capabilities CAPABILITY_IAM \
    --stack-name "consumer-prod-v1" \
    --profile "$AWS_PROFILE"

Help is much appreciated.

No Answers

You are not logged in. Log in to post an answer.

A good answer clearly answers the question and provides constructive feedback and encourages professional growth in the question asker.

Guidelines for Answering Questions