Skip to content

Commit 1b58b8c

Browse files
authored
Merge pull request #6 from kabisa/fix-dependency-existance-for-slos
fixed dependency issues for slo burn rates, they needed slo to exist
2 parents b477fff + cb5add0 commit 1b58b8c

File tree

2 files changed

+7
-4
lines changed

2 files changed

+7
-4
lines changed

errors-slo.tf

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,9 +15,10 @@ locals {
1515
var.error_slo_burn_rate_notification_channel_override,
1616
var.notification_channel
1717
), "")
18+
error_slo_burn_rate_enabled = var.error_slo_enabled && var.error_slo_burn_rate_enabled
19+
error_slo_id = local.error_slo_burn_rate_enabled ? datadog_service_level_objective.error_slo[0].id : ""
1820
}
1921

20-
2122
resource "datadog_service_level_objective" "error_slo" {
2223
count = var.error_slo_enabled ? 1 : 0
2324
name = "${local.service_display_name} - APM - Error SLO"
@@ -43,7 +44,7 @@ module "error_slo_burn_rate" {
4344
version = "0.7.4"
4445

4546
name = "APM - Error SLO - Burn Rate"
46-
query = "burn_rate(\"${datadog_service_level_objective.error_slo[0].id}\").over(\"${var.error_slo_burn_rate_evaluation_period}\").long_window(\"${var.error_slo_burn_rate_long_window}\").short_window(\"${var.error_slo_burn_rate_short_window}\") > ${var.error_slo_burn_rate_critical}"
47+
query = "burn_rate(\"${local.error_slo_id}\").over(\"${var.error_slo_burn_rate_evaluation_period}\").long_window(\"${var.error_slo_burn_rate_long_window}\").short_window(\"${var.error_slo_burn_rate_short_window}\") > ${var.error_slo_burn_rate_critical}"
4748

4849

4950
alert_message = "${local.service_display_name} service is burning through its Error Budget. The percentage of 5XX status codes is {{threshold}}x higher than expected"

latency-slo.tf

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,8 @@ locals {
77
var.latency_slo_burn_rate_notification_channel_override,
88
var.notification_channel
99
), "")
10+
latency_slo_burn_rate_enabled = var.latency_slo_enabled && var.latency_slo_burn_rate_enabled
11+
latency_slo_id = local.latency_slo_burn_rate_enabled ? datadog_service_level_objective.latency_slo[0].id : ""
1012
}
1113

1214

@@ -36,15 +38,15 @@ module "latency_slo_burn_rate" {
3638
version = "0.7.4"
3739

3840
name = "APM - Latency SLO - Burn Rate"
39-
query = "burn_rate(\"${datadog_service_level_objective.latency_slo[0].id}\").over(\"${var.latency_slo_burn_rate_evaluation_period}\").long_window(\"${var.latency_slo_burn_rate_long_window}\").short_window(\"${var.latency_slo_burn_rate_short_window}\") > ${var.latency_slo_burn_rate_critical}"
41+
query = "burn_rate(\"${local.latency_slo_id}\").over(\"${var.latency_slo_burn_rate_evaluation_period}\").long_window(\"${var.latency_slo_burn_rate_long_window}\").short_window(\"${var.latency_slo_burn_rate_short_window}\") > ${var.latency_slo_burn_rate_critical}"
4042

4143

4244
alert_message = "${local.service_display_name} service is burning through its Latency Budget. The percentage of slow requests is {{threshold}}x higher than expected"
4345
recovery_message = "${local.service_display_name} service burn rate has recovered"
4446
type = "slo alert"
4547

4648
# monitor level vars
47-
enabled = var.latency_slo_enabled && var.latency_slo_burn_rate_enabled
49+
enabled = local.latency_slo_burn_rate_enabled
4850
alerting_enabled = var.latency_slo_burn_rate_alerting_enabled
4951
warning_threshold = var.latency_slo_burn_rate_warning
5052
critical_threshold = var.latency_slo_burn_rate_critical

0 commit comments

Comments
 (0)