diff --git a/EMEA_PROD/custom_anomalies/TP_Mobile_VehicleData.tf b/EMEA_PROD/custom_anomalies/TP_Mobile_VehicleData.tf new file mode 100644 index 0000000..827c901 --- /dev/null +++ b/EMEA_PROD/custom_anomalies/TP_Mobile_VehicleData.tf @@ -0,0 +1,9 @@ +module TP_Mobile_VehicleData { + + source = "../../_dynatrace-base-modules/dynatrace-custom-anomalies" + + + name = "TP_Mobile_VehicleData" + + metric_selector = "${data.terraform_remote_state.slo.outputs.TP_Mobile_VehicleData_metric}" +} \ No newline at end of file diff --git a/EMEA_PROD/custom_anomalies/__main.tf b/EMEA_PROD/custom_anomalies/__main.tf new file mode 100644 index 0000000..57637a3 --- /dev/null +++ b/EMEA_PROD/custom_anomalies/__main.tf @@ -0,0 +1,38 @@ +terraform { + required_providers { + dynatrace = { + version = "1.11.0" + source = "dynatrace-oss/dynatrace" + } + } + + backend "s3" { + bucket = "coco-dynatrace-tfstate" + key = "EMEA_PROD/custom_anomalies/terraform.tfstate" + region = "eu-central-1" + dynamodb_table = "coco-dynatrace-tfstate" + encrypt = true + } + +} + +variable EMEA_PROD_ENV_URL {} +variable EMEA_PROD_API_TOKEN {} + + +provider "dynatrace" { + dt_env_url = "${var.EMEA_PROD_ENV_URL}" + dt_api_token = "${var.EMEA_PROD_API_TOKEN}" + +} + +data "terraform_remote_state" "slo" { + backend = "s3" + config = { + bucket = "coco-dynatrace-tfstate" + key = "EMEA_PROD/slo/terraform.tfstate" + region = "eu-central-1" + encrypt = true + dynamodb_table = "coco-dynatrace-tfstate" + } +} \ No newline at end of file diff --git a/EMEA_PROD/slo/TP_Mobile_DigitalKey.tf b/EMEA_PROD/slo/TP_Mobile_DigitalKey.tf index a6c0d57..bd0acb4 100644 --- a/EMEA_PROD/slo/TP_Mobile_DigitalKey.tf +++ b/EMEA_PROD/slo/TP_Mobile_DigitalKey.tf @@ -13,7 +13,7 @@ module TP_Mobile_DigitalKey { #metric expression of the calculation as done in data explorer ui metric_expression = <<-EOT (100)* -((1-)(builtin:service.keyRequest.errors.fivexx.count:filter( +((1)-(builtin:service.keyRequest.errors.fivexx.count:filter( and( or( in( diff --git a/EMEA_PROD/slo/TP_Mobile_VehicleData.tf b/EMEA_PROD/slo/TP_Mobile_VehicleData.tf index cf1d195..e4789d5 100644 --- a/EMEA_PROD/slo/TP_Mobile_VehicleData.tf +++ b/EMEA_PROD/slo/TP_Mobile_VehicleData.tf @@ -64,4 +64,9 @@ evaluation = "AGGREGATE" target = 98 #if not set(removed) it's defaulted to 98 warning = 99 #if not set(removed) it's defaulted to 99 +} + + +output "TP_Mobile_VehicleData_metric" { + value = module.TP_Mobile_VehicleData.metric_expression } \ No newline at end of file diff --git a/EMEA_PROD/slo/VDM_-_RSU_-_EMEA_E2E.tf b/EMEA_PROD/slo/VDM_-_RSU_-_EMEA_E2E.tf index 01b2270..9ff4c15 100644 --- a/EMEA_PROD/slo/VDM_-_RSU_-_EMEA_E2E.tf +++ b/EMEA_PROD/slo/VDM_-_RSU_-_EMEA_E2E.tf @@ -10,7 +10,7 @@ module VDM_-_RSU_-_EMEA_E2E { #entity selector object - filter = "type(SERVICE_METHOD), entityId(\"SERVICE_METHOD-813D7B449863A9A0\",\"SERVICE_METHOD-8612BFC9B4209B21\",\"SERVICE_METHOD-D08B1FE048BED1B2\",\"SERVICE_METHOD-6C0299941A0E4C1E\",\"SERVICE_METHOD-D3B134F2B9885DB4\",\"SERVICE_METHOD-2FDB1E822AB158CB\",\"SERVICE_METHOD-BCF86BC6AE79F7B6\",\"SERVICE_METHOD-90A5C9D32DD1BD20\",\"SERVICE_METHOD-37FE8C49B7111F7C\",\"SERVICE_METHOD-1A77D5DCF7CE235E\",\"SERVICE_METHOD-E4E3286247AA8BEB\")" + filter = "type(SERVICE_METHOD), entityId(\"SERVICE_METHOD-838A33198DB71C3D\",\"SERVICE_METHOD-544D9A523951DD9D\",\"SERVICE_METHOD-C7C7E7E30134CC4D\",\"SERVICE_METHOD-F5D48F6F3C9BB5A5\",\"SERVICE_METHOD-8C07F6C47928DCE1\",\"SERVICE_METHOD-EC33958252EFBE2D\",\"SERVICE_METHOD-887AD0E6454A03AD\",\"SERVICE_METHOD-C6618A2B5214ED42\",\"SERVICE_METHOD-0700CD81C580BCFE\",\"SERVICE_METHOD-C2A96AF76A2B3357\",\"SERVICE_METHOD-415422AFEC4E5C30\")" #metric expression of the calculation as done in data explorer ui diff --git a/EMEA_PROD/slo/VDM_-_RSU_-_EMEA_PROD.tf b/EMEA_PROD/slo/VDM_-_RSU_-_EMEA_PROD.tf index cbfa8fe..88611ba 100644 --- a/EMEA_PROD/slo/VDM_-_RSU_-_EMEA_PROD.tf +++ b/EMEA_PROD/slo/VDM_-_RSU_-_EMEA_PROD.tf @@ -10,7 +10,7 @@ module VDM_-_RSU_-_EMEA_PROD { #entity selector object - filter = "type(SERVICE_METHOD), entityId(\"SERVICE_METHOD-9AF7A9302E71A3BE\",\"SERVICE_METHOD-360C23BA44FD151A\",\"SERVICE_METHOD-BC4D2349C378287A\",\"SERVICE_METHOD-DD5CDB7B683E508E\",\"SERVICE_METHOD-A96EF549D37C4AD7\",\"SERVICE_METHOD-BBD8F64F76C87670\",\"SERVICE_METHOD-674F670A27DDAB92\",\"SERVICE_METHOD-892AFAED1C4C45C2\",\"SERVICE_METHOD-BDCD96EFA6AFF21F\",\"SERVICE_METHOD-7B91EB6EF6AAABD0\",\"SERVICE_METHOD-C291996956CD2A5E\")" + filter = "type(SERVICE_METHOD), entityId(\"SERVICE_METHOD-D326B245FDB9D1ED\",\"SERVICE_METHOD-9302D3E7A92ADDFA\",\"SERVICE_METHOD-906DE650C315D350\",\"SERVICE_METHOD-D8A1844CE8071821\",\"SERVICE_METHOD-0DA998BAE52F2411\",\"SERVICE_METHOD-A4E2775F8C482FAA\",\"SERVICE_METHOD-134EDF22BE9DD08C\",\"SERVICE_METHOD-F88AA0117B1EAFE8\",\"SERVICE_METHOD-66102B135997AC0F\",\"SERVICE_METHOD-09E14021A51BFE1E\",\"SERVICE_METHOD-2C35BCA5F6C89C41\")" #metric expression of the calculation as done in data explorer ui diff --git a/EMEA_PROD/slo/Wirkkette__RSU__-_Reliability_of_key_requests.tf b/EMEA_PROD/slo/Wirkkette__RSU__-_Reliability_of_key_requests.tf index 2720fd7..c3a86d9 100644 --- a/EMEA_PROD/slo/Wirkkette__RSU__-_Reliability_of_key_requests.tf +++ b/EMEA_PROD/slo/Wirkkette__RSU__-_Reliability_of_key_requests.tf @@ -10,7 +10,8 @@ module Wirkkette__RSU__-_Reliability_of_key_requests { #entity selector object - filter = "type(SERVICE_METHOD), entityId(\"SERVICE_METHOD-360C23BA44FD151A\",\"SERVICE_METHOD-9AF7A9302E71A3BE\",\"SERVICE_METHOD-BC4D2349C378287A\",\"SERVICE_METHOD-DD5CDB7B683E508E\",\"SERVICE_METHOD-BBD8F64F76C87670\",\"SERVICE_METHOD-674F670A27DDAB92\",\"SERVICE_METHOD-892AFAED1C4C45C2\",\"SERVICE_METHOD-7B91EB6EF6AAABD0\",\"SERVICE_METHOD-C291996956CD2A5E\",\"SERVICE_METHOD-A96EF549D37C4AD7\",\"SERVICE_METHOD-BDCD96EFA6AFF21F\")" + filter = "type(SERVICE_METHOD), entityId(\"SERVICE_METHOD-D326B245FDB9D1ED\",\"SERVICE_METHOD-9302D3E7A92ADDFA\",\"SERVICE_METHOD-906DE650C315D350\",\"SERVICE_METHOD-D8A1844CE8071821\",\"SERVICE_METHOD-0DA998BAE52F2411\",\"SERVICE_METHOD-A4E2775F8C482FAA\",\"SERVICE_METHOD-134EDF22BE9DD08C\",\"SERVICE_METHOD-F88AA0117B1EAFE8\",\"SERVICE_METHOD-66102B135997AC0F\",\"SERVICE_METHOD-09E14021A51BFE1E\",\"SERVICE_METHOD-2C35BCA5F6C89C41\")" + #filter = "type(SERVICE_METHOD), entityId(\"SERVICE_METHOD-360C23BA44FD151A\",\"SERVICE_METHOD-9AF7A9302E71A3BE\",\"SERVICE_METHOD-BC4D2349C378287A\",\"SERVICE_METHOD-DD5CDB7B683E508E\",\"SERVICE_METHOD-BBD8F64F76C87670\",\"SERVICE_METHOD-674F670A27DDAB92\",\"SERVICE_METHOD-892AFAED1C4C45C2\",\"SERVICE_METHOD-7B91EB6EF6AAABD0\",\"SERVICE_METHOD-C291996956CD2A5E\",\"SERVICE_METHOD-A96EF549D37C4AD7\",\"SERVICE_METHOD-BDCD96EFA6AFF21F\")" #metric expression of the calculation as done in data explorer ui diff --git a/_dynatrace-base-modules/dynatrace-service-level-objective/dynatrace-service-level-objective.tf b/_dynatrace-base-modules/dynatrace-service-level-objective/dynatrace-service-level-objective.tf index c8a27b3..f70c2ea 100644 --- a/_dynatrace-base-modules/dynatrace-service-level-objective/dynatrace-service-level-objective.tf +++ b/_dynatrace-base-modules/dynatrace-service-level-objective/dynatrace-service-level-objective.tf @@ -24,3 +24,11 @@ resource dynatrace_slo main { output "id" { value = dynatrace_slo.main.id } + +output "name" { + value = dynatrace_slo.main.name +} + +output "metric_expression" { + value = dynatrace_slo.main.metric_expression +}