【发布时间】:2022-01-12 20:19:44
【问题描述】:
我有一个 lambda,每天早上 8:00 EST 运行。此 lambda 向 Slack 通道发送错误通知。问题是这个特定的 lambda 是由多个租户环境同时创建和运行的,因此 lambda 生成的警报在松弛通道中相互重叠。我想对租户名称进行哈希处理并生成一个介于 1 到 60 之间的整数,这将在一小时内错开 lambda 的部署。目前,控制 lambda 时间的 terraform 如下所示:
resource "aws_cloudwatch_event_rule" "notifications" {
name = "${var.tenant}-check-for-errors"
description = "Send notifications to slack"
schedule_expression = "cron(0 12 ? * MON-FRI *)"
我希望schedule_expression 类似于cron(${parseint(sha1(var.tenant), 16)/60} 12 ? * MON-FRI *),因此 var.tenant 的每个值都会不同。
我可以这样做吗?它会是什么样子?
【问题讨论】:
-
这有什么商业意义?您不只是延迟发送错误通知吗?
-
开始时每天只发送一次错误消息。重点是集中错误,以便我们在一个位置查看所有错误。
标签: amazon-web-services terraform