diff --git a/infrastructure/terraform/components/api/README.md b/infrastructure/terraform/components/api/README.md
index ce859ec31..23356b0a4 100644
--- a/infrastructure/terraform/components/api/README.md
+++ b/infrastructure/terraform/components/api/README.md
@@ -51,7 +51,7 @@ No requirements.
| Name | Source | Version |
|------|--------|---------|
| [amendment\_event\_transformer](#module\_amendment\_event\_transformer) | https://github.com/NHSDigital/nhs-notify-shared-modules/releases/download/v2.0.29/terraform-lambda.zip | n/a |
-| [amendments\_queue](#module\_amendments\_queue) | https://github.com/NHSDigital/nhs-notify-shared-modules/releases/download/3.0.6/terraform-sqs.zip | n/a |
+| [amendments\_queue](#module\_amendments\_queue) | https://github.com/NHSDigital/nhs-notify-shared-modules/releases/download/3.1.5/terraform-sqs.zip | n/a |
| [authorizer\_lambda](#module\_authorizer\_lambda) | https://github.com/NHSDigital/nhs-notify-shared-modules/releases/download/v2.0.29/terraform-lambda.zip | n/a |
| [ddb\_alarms\_idempotency](#module\_ddb\_alarms\_idempotency) | ../../modules/alarms-ddb | n/a |
| [ddb\_alarms\_letter\_queue](#module\_ddb\_alarms\_letter\_queue) | ../../modules/alarms-ddb | n/a |
@@ -67,7 +67,7 @@ No requirements.
| [get\_status](#module\_get\_status) | https://github.com/NHSDigital/nhs-notify-shared-modules/releases/download/v2.0.29/terraform-lambda.zip | n/a |
| [kms](#module\_kms) | https://github.com/NHSDigital/nhs-notify-shared-modules/releases/download/v2.0.26/terraform-kms.zip | n/a |
| [lambda\_alarms](#module\_lambda\_alarms) | ../../modules/alarms-lambda | n/a |
-| [letter\_status\_updates\_queue](#module\_letter\_status\_updates\_queue) | https://github.com/NHSDigital/nhs-notify-shared-modules/releases/download/3.0.6/terraform-sqs.zip | n/a |
+| [letter\_status\_updates\_queue](#module\_letter\_status\_updates\_queue) | https://github.com/NHSDigital/nhs-notify-shared-modules/releases/download/3.1.5/terraform-sqs.zip | n/a |
| [letter\_updates\_transformer](#module\_letter\_updates\_transformer) | https://github.com/NHSDigital/nhs-notify-shared-modules/releases/download/v2.0.29/terraform-lambda.zip | n/a |
| [mi\_updates\_transformer](#module\_mi\_updates\_transformer) | https://github.com/NHSDigital/nhs-notify-shared-modules/releases/download/v2.0.26/terraform-lambda.zip | n/a |
| [patch\_letter](#module\_patch\_letter) | https://github.com/NHSDigital/nhs-notify-shared-modules/releases/download/v2.0.29/terraform-lambda.zip | n/a |
@@ -75,8 +75,8 @@ No requirements.
| [post\_mi](#module\_post\_mi) | https://github.com/NHSDigital/nhs-notify-shared-modules/releases/download/v2.0.29/terraform-lambda.zip | n/a |
| [s3bucket\_test\_letters](#module\_s3bucket\_test\_letters) | https://github.com/NHSDigital/nhs-notify-shared-modules/releases/download/v2.0.26/terraform-s3bucket.zip | n/a |
| [sqs\_alarms](#module\_sqs\_alarms) | ../../modules/alarms-sqs | n/a |
-| [sqs\_letter\_updates](#module\_sqs\_letter\_updates) | https://github.com/NHSDigital/nhs-notify-shared-modules/releases/download/3.0.6/terraform-sqs.zip | n/a |
-| [sqs\_supplier\_allocator](#module\_sqs\_supplier\_allocator) | https://github.com/NHSDigital/nhs-notify-shared-modules/releases/download/3.0.6/terraform-sqs.zip | n/a |
+| [sqs\_letter\_updates](#module\_sqs\_letter\_updates) | https://github.com/NHSDigital/nhs-notify-shared-modules/releases/download/3.1.5/terraform-sqs.zip | n/a |
+| [sqs\_supplier\_allocator](#module\_sqs\_supplier\_allocator) | https://github.com/NHSDigital/nhs-notify-shared-modules/releases/download/3.1.5/terraform-sqs.zip | n/a |
| [supplier\_allocator](#module\_supplier\_allocator) | https://github.com/NHSDigital/nhs-notify-shared-modules/releases/download/v2.0.29/terraform-lambda.zip | n/a |
| [supplier\_ssl](#module\_supplier\_ssl) | https://github.com/NHSDigital/nhs-notify-shared-modules/releases/download/v2.0.26/terraform-ssl.zip | n/a |
| [update\_letter\_queue](#module\_update\_letter\_queue) | https://github.com/NHSDigital/nhs-notify-shared-modules/releases/download/v2.0.29/terraform-lambda.zip | n/a |
diff --git a/infrastructure/terraform/components/api/module_sqs_alarms.tf b/infrastructure/terraform/components/api/module_sqs_alarms.tf
index 28b948640..e9da40596 100644
--- a/infrastructure/terraform/components/api/module_sqs_alarms.tf
+++ b/infrastructure/terraform/components/api/module_sqs_alarms.tf
@@ -2,8 +2,7 @@ module "sqs_alarms" {
for_each = local.alarms_enabled ? local.sqs_alarm_targets : {}
source = "../../modules/alarms-sqs"
- alarm_prefix = local.csi
- queue_name = each.value
- dlq_queue_name = replace(each.value, "-queue", "-dlq")
- tags = local.default_tags
+ alarm_prefix = local.csi
+ queue_name = each.value
+ tags = local.default_tags
}
diff --git a/infrastructure/terraform/components/api/module_sqs_amendments.tf b/infrastructure/terraform/components/api/module_sqs_amendments.tf
index 8fca10e9d..8e30bb0d9 100644
--- a/infrastructure/terraform/components/api/module_sqs_amendments.tf
+++ b/infrastructure/terraform/components/api/module_sqs_amendments.tf
@@ -1,6 +1,6 @@
# Queue to transport letter status amendment messages
module "amendments_queue" {
- source = "https://github.com/NHSDigital/nhs-notify-shared-modules/releases/download/3.0.6/terraform-sqs.zip"
+ source = "https://github.com/NHSDigital/nhs-notify-shared-modules/releases/download/3.1.5/terraform-sqs.zip"
name = "amendments_queue"
@@ -12,5 +12,6 @@ module "amendments_queue" {
sqs_kms_key_arn = module.kms.key_arn
- create_dlq = true
+ create_dlq = true
+ enable_queue_oldest_message_alarm = false
}
diff --git a/infrastructure/terraform/components/api/module_sqs_letter_status_updates.tf b/infrastructure/terraform/components/api/module_sqs_letter_status_updates.tf
index db7d27a85..59c0cfef0 100644
--- a/infrastructure/terraform/components/api/module_sqs_letter_status_updates.tf
+++ b/infrastructure/terraform/components/api/module_sqs_letter_status_updates.tf
@@ -1,7 +1,7 @@
# Queue to transport update letter status messages. Now replaced by module.amendments_queue.
# This queue will not be removed just yet, to allow it to be drained following the release in which module.amendments_queue replaces it.
module "letter_status_updates_queue" {
- source = "https://github.com/NHSDigital/nhs-notify-shared-modules/releases/download/3.0.6/terraform-sqs.zip"
+ source = "https://github.com/NHSDigital/nhs-notify-shared-modules/releases/download/3.1.5/terraform-sqs.zip"
name = "letter_status_updates_queue"
@@ -13,5 +13,6 @@ module "letter_status_updates_queue" {
sqs_kms_key_arn = module.kms.key_arn
- create_dlq = true
+ create_dlq = true
+ enable_queue_oldest_message_alarm = false
}
diff --git a/infrastructure/terraform/components/api/module_sqs_letter_updates.tf b/infrastructure/terraform/components/api/module_sqs_letter_updates.tf
index 1e886d61e..8e94af340 100644
--- a/infrastructure/terraform/components/api/module_sqs_letter_updates.tf
+++ b/infrastructure/terraform/components/api/module_sqs_letter_updates.tf
@@ -1,5 +1,5 @@
module "sqs_letter_updates" {
- source = "https://github.com/NHSDigital/nhs-notify-shared-modules/releases/download/3.0.6/terraform-sqs.zip"
+ source = "https://github.com/NHSDigital/nhs-notify-shared-modules/releases/download/3.1.5/terraform-sqs.zip"
aws_account_id = var.aws_account_id
component = var.component
@@ -12,8 +12,9 @@ module "sqs_letter_updates" {
visibility_timeout_seconds = 60
- create_dlq = true
- sqs_policy_overload = data.aws_iam_policy_document.letter_updates_queue_policy.json
+ create_dlq = true
+ enable_queue_oldest_message_alarm = false
+ sqs_policy_overload = data.aws_iam_policy_document.letter_updates_queue_policy.json
}
data "aws_iam_policy_document" "letter_updates_queue_policy" {
diff --git a/infrastructure/terraform/components/api/module_sqs_supplier_allocator.tf b/infrastructure/terraform/components/api/module_sqs_supplier_allocator.tf
index 565038d7b..653417a27 100644
--- a/infrastructure/terraform/components/api/module_sqs_supplier_allocator.tf
+++ b/infrastructure/terraform/components/api/module_sqs_supplier_allocator.tf
@@ -1,5 +1,5 @@
module "sqs_supplier_allocator" {
- source = "https://github.com/NHSDigital/nhs-notify-shared-modules/releases/download/3.0.6/terraform-sqs.zip"
+ source = "https://github.com/NHSDigital/nhs-notify-shared-modules/releases/download/3.1.5/terraform-sqs.zip"
aws_account_id = var.aws_account_id
component = var.component
@@ -12,8 +12,9 @@ module "sqs_supplier_allocator" {
visibility_timeout_seconds = 60
- create_dlq = true
- sqs_policy_overload = data.aws_iam_policy_document.supplier_allocator_queue_policy.json
+ create_dlq = true
+ enable_queue_oldest_message_alarm = false
+ sqs_policy_overload = data.aws_iam_policy_document.supplier_allocator_queue_policy.json
}
data "aws_iam_policy_document" "supplier_allocator_queue_policy" {
diff --git a/infrastructure/terraform/modules/alarms-sqs/README.md b/infrastructure/terraform/modules/alarms-sqs/README.md
index 6ddbea4ca..2c721eadb 100644
--- a/infrastructure/terraform/modules/alarms-sqs/README.md
+++ b/infrastructure/terraform/modules/alarms-sqs/README.md
@@ -16,8 +16,6 @@
| [age\_anomaly\_sensitivity](#input\_age\_anomaly\_sensitivity) | n/a | `number` | `3` | no |
| [age\_period\_seconds](#input\_age\_period\_seconds) | n/a | `number` | `900` | no |
| [alarm\_prefix](#input\_alarm\_prefix) | n/a | `string` | n/a | yes |
-| [dlq\_queue\_name](#input\_dlq\_queue\_name) | n/a | `string` | `null` | no |
-| [dlq\_visible\_threshold](#input\_dlq\_visible\_threshold) | n/a | `number` | `0` | no |
| [queue\_name](#input\_queue\_name) | n/a | `string` | n/a | yes |
| [tags](#input\_tags) | n/a | `map(string)` | `{}` | no |
## Modules
diff --git a/infrastructure/terraform/modules/alarms-sqs/cloudwatch_metric_alarm_dlq_depth.tf b/infrastructure/terraform/modules/alarms-sqs/cloudwatch_metric_alarm_dlq_depth.tf
deleted file mode 100644
index 41b1251ba..000000000
--- a/infrastructure/terraform/modules/alarms-sqs/cloudwatch_metric_alarm_dlq_depth.tf
+++ /dev/null
@@ -1,23 +0,0 @@
-resource "aws_cloudwatch_metric_alarm" "dlq_depth" {
- count = var.dlq_queue_name == null ? 0 : 1
- alarm_name = "${var.alarm_prefix}-sqs-${var.dlq_queue_name}-dlq-depth"
- alarm_description = "RELIABILITY: SQS DLQ has messages"
-
- namespace = "AWS/SQS"
- metric_name = "ApproximateNumberOfMessagesVisible"
- statistic = "Sum"
- period = 60
-
- evaluation_periods = 1
- threshold = var.dlq_visible_threshold
- comparison_operator = "GreaterThanThreshold"
- treat_missing_data = "notBreaching"
-
- dimensions = { QueueName = var.dlq_queue_name }
-
- actions_enabled = false
- alarm_actions = []
- ok_actions = []
- insufficient_data_actions = []
- tags = var.tags
-}
diff --git a/infrastructure/terraform/modules/alarms-sqs/variables.tf b/infrastructure/terraform/modules/alarms-sqs/variables.tf
index 364fc6153..c635c3973 100644
--- a/infrastructure/terraform/modules/alarms-sqs/variables.tf
+++ b/infrastructure/terraform/modules/alarms-sqs/variables.tf
@@ -6,11 +6,6 @@ variable "queue_name" {
type = string
}
-variable "dlq_queue_name" {
- type = string
- default = null
-}
-
variable "tags" {
type = map(string)
default = {}
@@ -35,8 +30,3 @@ variable "age_anomaly_datapoints_to_alarm" {
type = number
default = 3
}
-
-variable "dlq_visible_threshold" {
- type = number
- default = 0
-}