我有一个lambda函数,可通过API向用户订阅新闻通讯,但是我想知道如何在Lambda等待新闻通讯API超时的情况下向用户发送错误消息。
有没有办法说:
if (timeout) { return 500 }
如果它是lambda @ edge怎么办?然后超时是否会回到我的原始服务器?
答案 0 :(得分:1)
GitHub - stelligent/cloudformation-custom-resources上的代码示例包括一些在可用时间到期时中止Lambda函数的示例。
Python示例包含代码:
# Setup alarm for remaining runtime minus a second
signal.alarm((context.get_remaining_time_in_millis() / 1000) - 1)
def timeout_handler(_signal, _frame):
'''Handle SIGALRM'''
raise Exception('Time exceeded')
signal.signal(signal.SIGALRM, timeout_handler)