如果 AWS Lambda 函数在指定时间段(假设 2 小时)内未 运行(或未被触发),是否可以发送警报?

Is there a way to send an alert if an AWS Lambda function is not running(or not being triggered) for a specified period of time (let's say 2 hours)?

在我们团队的基础架构中,我们有一个 Databricks 作业,该作业将数据发送到触发 Lambda 函数的 SQS 队列。 Databricks 作业每 30 分钟运行一次。一周前,Databricks 作业不断失败,因此它没有发送数据,因此没有触发 Lambda 函数。有什么方法可以设置警报,以便在 2 小时内未触发 lambda 函数时通知我?

当我搜索解决方案时,我只能看到当 Lambda 失败时或在其 cloudwatch 日志等中找到特定日志类型时收到警报,但看不到任何解决方案以上场景。

您可以为该 lambda 的 Invocation 指标创建 Cloudwatch 警报;您可以配置警报,以便如果在两个小时的时间跨度内没有调用,它就会进入警报状态。

如果您希望收到通知,您还可以配置 Cloudwatch 警报以向 SNS 主题发送消息,然后可以将其配置为触发 SES,以便它向您发送电子邮件(例如)。