Skip to content

Commit aa8f565

Browse files
committed
BAU: enable RDS performance insights
1 parent c8e8cec commit aa8f565

8 files changed

Lines changed: 20 additions & 2 deletions

File tree

infra/deployments/forms/inputs.tf

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -193,6 +193,7 @@ variable "environmental_settings" {
193193
enable_shield_advanced_healthchecks = bool
194194
allow_pagerduty_alerts = bool
195195
redis_multi_az_enabled = bool
196+
enable_rds_performance_insights = bool
196197
})
197198
}
198199

infra/deployments/forms/rds/main.tf

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,8 @@ module "rds" {
2020
seconds_until_auto_pause = var.environmental_settings.pause_databases_after_inactivity_seconds
2121
backup_retention_period = var.environmental_settings.database_backup_retention_period_days
2222

23+
performance_insights_enabled = var.environmental_settings.enable_rds_performance_insights
24+
2325
apps_list = {
2426
forms-admin = { username = "forms-admin-app" }
2527
}
@@ -42,6 +44,8 @@ module "forms_runner_rds" {
4244
seconds_until_auto_pause = var.environmental_settings.pause_databases_after_inactivity_seconds
4345
backup_retention_period = var.environmental_settings.database_backup_retention_period_days
4446

47+
performance_insights_enabled = var.environmental_settings.enable_rds_performance_insights
48+
4549
apps_list = {
4650
forms-runner = { username = "forms-runner-app" }
4751
forms-runner-queue = { username = "forms-runner-app-queue" }

infra/deployments/forms/tfvars/dev.tfvars

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@ environmental_settings = {
2222
enable_shield_advanced_healthchecks = false
2323
allow_pagerduty_alerts = false
2424
redis_multi_az_enabled = false
25+
enable_rds_performance_insights = false
2526
}
2627
root_domain = "dev.forms.service.gov.uk"
2728
additional_dns_records = [

infra/deployments/forms/tfvars/production.tfvars

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,7 @@ environmental_settings = {
4545
enable_shield_advanced_healthchecks = true
4646
allow_pagerduty_alerts = true
4747
redis_multi_az_enabled = true
48+
enable_rds_performance_insights = true
4849
}
4950
root_domain = "forms.service.gov.uk"
5051
additional_dns_records = [

infra/deployments/forms/tfvars/staging.tfvars

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@ environmental_settings = {
2424
enable_shield_advanced_healthchecks = false
2525
allow_pagerduty_alerts = false
2626
redis_multi_az_enabled = false
27+
enable_rds_performance_insights = false
2728
}
2829
root_domain = "staging.forms.service.gov.uk"
2930
additional_dns_records = []

infra/deployments/forms/tfvars/user-research.tfvars

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@ environmental_settings = {
2222
enable_shield_advanced_healthchecks = false
2323
allow_pagerduty_alerts = false
2424
redis_multi_az_enabled = false
25+
enable_rds_performance_insights = false
2526
}
2627
root_domain = "research.forms.service.gov.uk"
2728
additional_dns_records = []

infra/modules/rds/rds.tf

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -57,6 +57,11 @@ resource "aws_rds_cluster" "cluster_aurora_v2" {
5757
backup_retention_period = var.backup_retention_period
5858
deletion_protection = true
5959

60+
database_insights_mode = var.performance_insights_enabled ? "advanced" : null
61+
62+
performance_insights_enabled = var.performance_insights_enabled
63+
performance_insights_retention_period = var.performance_insights_enabled ? 465 : null
64+
6065
serverlessv2_scaling_configuration {
6166
max_capacity = var.max_capacity
6267
min_capacity = var.min_capacity
@@ -91,8 +96,6 @@ resource "aws_rds_cluster" "cluster_aurora_v2" {
9196

9297
resource "aws_rds_cluster_instance" "member" {
9398
#checkov:skip=CKV_AWS_118:We don't currently have enhanced monitoring
94-
#checkov:skip=CKV_AWS_353:We don't currently use performance insights
95-
#checkov:skip=CKV_AWS_354:We don't currently use performance insights
9699

97100
cluster_identifier = aws_rds_cluster.cluster_aurora_v2.id
98101
engine = "aurora-postgresql"

infra/modules/rds/variables.tf

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -81,3 +81,9 @@ variable "database_identifier" {
8181
type = string
8282
description = "The name of the database in the cluster"
8383
}
84+
85+
variable "performance_insights_enabled" {
86+
type = bool
87+
description = "Whether to enable Performance Insights for the RDS instance"
88+
default = false
89+
}

0 commit comments

Comments
 (0)