В лямбда-логине не отображаются сообщения aws - PullRequest
1 голос
/ 12 апреля 2020

У меня есть очередь SQS, которая запускает лямбду, как только получает сообщение. Лямбда срабатывает, но я не вижу ответа при использовании вызова API receive_message.

import json
import urllib.parse
import boto3
sqs = boto3.client('sqs')


def lambda_handler(event, context):

    try:
        response = sqs.receive_message(
        QueueUrl="https://sqs.us-east-1.amazonaws.com/*****/test-queue"
            )

        print("Response",response)
        return 
    except Exception as e:
        print(e)
        raise e

Вывод

{'ResponseMetadata': {'RequestId': 'd4d364b9-ac8c-5dcd-a174-33b4aae995c9', 'HTTPStatusCode': 200, 'HTTPHeaders': {'x-amzn-requestid': 'd4d364b9-ac8c-5dcd-a174-33b4aae995c9', 'date': 'Sun, 12 Apr 2020 12:05:57 GMT', 'content-type': 'text/xml', 'content-length': '240'}, 'RetryAttempts': 0}}

Может кто-нибудь помочь мне здесь ??

1 Ответ

2 голосов
/ 12 апреля 2020

Если ваша лямбда-функция автоматически запускается с помощью SQS, то сообщения будут находиться в объекте event.

Вам не нужно явно вызывать sqs.receive_message для читать сообщения из очереди. Просто используйте объект event.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...