使用AWS Lambda Python API将消息发送到AWS SQS队列超时

亚历克斯

我正在尝试使用其Python API在AWS Lambda中写入SQS消息,但是我尝试的所有操作都超时了(我已经运行了一分钟但没有成功)。我为此角色配置了SQS完全访问权限。我可以看到功能日志到达正确的位置,但是最后一行说

Starting new HTTPS connection (1): eu-west-1.queue.amazonaws.com

在它超时之前。我正在使用AWS控制台中的测试客户端对其进行测试。

处理程序代码为:

import boto3
import logging
import os

logger = logging.getLogger()
logger.setLevel(logging.DEBUG)

QUEUE_NAME = os.getenv("QUEUE_NAME")
SQS = boto3.client("sqs")

def getQueueURL():
    """Retrieve the URL for the configured queue name"""
    q = SQS.get_queue_url(QueueName=QUEUE_NAME).get('QueueUrl')
    logger.debug("Queue URL is %s", QUEUE_URL)
    return q

def record(event, context):
    """The lambda handler"""
    logger.debug("Recording with event %s", event)
    data = event.get('data')
    try:
        logger.debug("Recording %s", data)
        u = getQueueURL()
        logging.debug("Got queue URL %s", u)
        resp = SQS.send_message(QueueUrl=u, MessageBody=data)
        logger.debug("Send result: %s", resp)
    except Exception as e:
        raise Exception("Could not record link! %s" % e)

似乎总是在检索队列URL时超时。为什么会这样,我如何真正防止这种情况发生,以便我可以写到队列?

亚历克斯

我已经将此功能分配给了VPC和关联的子网,这阻止了它访问外部资源。删除此问题解决了我的问题。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

使用Java从AWS Lambda访问SQS时超时

将数据从AWS Lambda发送到SQS队列时重置连接

从AWS Lambda读取SQS队列

如何使用JavaScript将消息发送到JMS队列?

AWS Lambda中的Python请求超时

使用python中的AWS Lambda将发布请求发送到外部API

有什么方法可以在特定条件下从AWS lambda函数内部将事件消息显式发送到死信队列?

AWS Lambda从SQS队列读取

在将消息发送到SQS之前完成AWS Lambda

如何使用Boto3和Python将多个批处理消息从列表发送到SQS队列

将消息发送到具有2个SQS订阅的SNS主题,每个订阅都有一个lambda触发器,将导致空队列

AWS SQS:可见性超时到期后,FIFO队列中的消息顺序是什么?

AWS API Gateway Websocket将消息发送到连接

如何使用python boto3将消息发送到本地SQS队列?

Lambda无法将消息发送到SQS

在AWS Lambda函数中使用Python多处理队列

如何从外部SQS队列活动触发AWS Lambda函数

Python3.8-FastAPI和无服务器(AWS Lambda)-无法处理发送到api端点的文件

AWS Lambda,超时重试,Python SDK

使用Spring Boot将消息发送到JMS队列

无法使用Python 3将MessageAttributes发送到AWS SQS

使用Java Swing将消息发送到JMS队列

如何通过 aws 网关将数据发送到 aws lambda?

使用 lambda 创建 SQS 队列

用于捕获 AWS MQ 的 AWS 云监视日志并发送到 kinesis 的 Python Lambda 函数

使用 SQS 队列的 lambda 函数如何将消息发送到死信队列?

AWS Lambda 与 SQS 的连接超时

如何使用jms将多个消息发送到队列

如何使用 vpc 端点配置 AWS lambda 触发器以使用 SQS 队列