【发布时间】:2019-01-15 05:30:02
【问题描述】:
我有 3 个函数。
- Cron 作业 lambda 函数
- 事件驱动函数,用于检测何时将新记录添加到 DynamoDB 中
- 当前由上述 2 个函数调用的可重用函数
Cron 作业函数
export async function scheduledFunction() {
const detailsHistory = await sharedFunction(param1);
}
事件驱动函数
export async function eventFunction(event) {
event.Records.forEach(async record => {
if (record.eventName === 'INSERT') {
await sharedFunction(param1)
}
}
}
事件和调度函数都调用的函数
const sharedFunction = async (param1) {
const apiUrl = 'xxxxxx';
const details = await axios.get(apiUrl, {
headers: {
'x-api-key': xxxx
}
});
}
当DynamoDB 有一个新插入然后调用按预期工作的第 3 方 API 时,事件函数起作用
计划的函数每 4 小时触发一次,并且可以正常工作并到达 sharedFunction,但是当它到达 API 调用 await axios.get 时,它什么也不做,我在 CloudWatch 中没有收到任何错误。我在通话前后放置了console.logs(),它记录了之前的,但之后没有。
【问题讨论】:
标签: aws-lambda serverless-framework serverless