From 3b5473eeefcadba97762fb462375efb55d82a5e3 Mon Sep 17 00:00:00 2001 From: Joris Schmidl Date: Mon, 8 May 2023 23:44:18 +0200 Subject: [PATCH] [CDVOC-2769] SLO for VOS rtfso --- .../CD_VOS-RTFSO_AdminApiResource_Requests.tf | 41 +++++++++++++++++++ .../CD_VOS-RTFSO_FleetApiResource_Requests.tf | 41 +++++++++++++++++++ 2 files changed, 82 insertions(+) create mode 100644 EMEA_PROD/slo/CD_VOS-RTFSO_AdminApiResource_Requests.tf create mode 100644 EMEA_PROD/slo/CD_VOS-RTFSO_FleetApiResource_Requests.tf diff --git a/EMEA_PROD/slo/CD_VOS-RTFSO_AdminApiResource_Requests.tf b/EMEA_PROD/slo/CD_VOS-RTFSO_AdminApiResource_Requests.tf new file mode 100644 index 0000000..ff22e6f --- /dev/null +++ b/EMEA_PROD/slo/CD_VOS-RTFSO_AdminApiResource_Requests.tf @@ -0,0 +1,41 @@ +module AWA_dfl_ConfigResource_Requests { + + source = "../../_dynatrace-base-modules/dynatrace-service-level-objective" + + + name = "VOS-rtfso - AdminApiResource - Requests" + description = "Success rate of AdminApiResource" + + + #entity selector object + filter = "" + + #metric expression of the calculation as done in data explorer ui + metric_expression = <<-EOT + +(100) * ((1) - +(builtin:service.keyRequest.errors.fivexx.count:filter(and(or + (in("dt.entity.service_method",entitySelector("type(service_method),fromRelationship.isServiceMethodOfService(type(~"SERVICE~"), + entityName.in(~"AdminApiResource - vos - prod~"), tag(~"Environment:PROD~")), + entityName.in(~"getFleets~", ~"createFleet~", ~"getFleet~", ~"updateFleet~", ~"deleteFleet~", ~"deleteFleet~")"))))) + :splitBy()) +/ +(builtin:service.keyRequest.count.server:filter(and(or + (in("dt.entity.service_method",entitySelector("type(service_method),fromRelationship.isServiceMethodOfService(type(~"SERVICE~"), + entityName.in(~"AdminApiResource - vos - prod~"), tag(~"Environment:PROD~")), + entityName.in(~"getFleets~", ~"createFleet~", ~"getFleet~", ~"updateFleet~", ~"deleteFleet~", ~"deleteFleet~")"))))) + :splitBy())) + +EOT + +#if not set (removed) it's defaulted to "-1d" +timeframe = "-1d" + +#currently the only possible value +evaluation = "AGGREGATE" + +#Target and warning percentage of the SLO as double +target = 98 #if not set(removed) it's defaulted to 98 +warning = 99 #if not set(removed) it's defaulted to 99 + +} \ No newline at end of file diff --git a/EMEA_PROD/slo/CD_VOS-RTFSO_FleetApiResource_Requests.tf b/EMEA_PROD/slo/CD_VOS-RTFSO_FleetApiResource_Requests.tf new file mode 100644 index 0000000..6f011fe --- /dev/null +++ b/EMEA_PROD/slo/CD_VOS-RTFSO_FleetApiResource_Requests.tf @@ -0,0 +1,41 @@ +module AWA_dfl_ConfigResource_Requests { + + source = "../../_dynatrace-base-modules/dynatrace-service-level-objective" + + + name = "VOS-rtfso - FleetApiResource - Requests" + description = "Success rate of FleetApiResource" + + + #entity selector object + filter = "" + + #metric expression of the calculation as done in data explorer ui + metric_expression = <<-EOT + +(100) * ((1) - +(builtin:service.keyRequest.errors.fivexx.count:filter(and(or + (in("dt.entity.service_method",entitySelector("type(service_method),fromRelationship.isServiceMethodOfService(type(~"SERVICE~"), + entityName.in(~"FleetApiResource - vos - prod~"), tag(~"Environment:PROD~")), + entityName.in(~"getFleets~", ~"getFleet~", ~"getFleetsFromVehicle~", ~"getVehiclesFromFleet~")"))))) + :splitBy()) +/ +(builtin:service.keyRequest.count.server:filter(and(or + (in("dt.entity.service_method",entitySelector("type(service_method),fromRelationship.isServiceMethodOfService(type(~"SERVICE~"), + entityName.in(~"FleetApiResource - vos - prod~"), tag(~"Environment:PROD~")), + entityName.in(~"getFleets~", ~"getFleet~", ~"getFleetsFromVehicle~", ~"getVehiclesFromFleet~")"))))) + :splitBy())) + +EOT + +#if not set (removed) it's defaulted to "-1d" +timeframe = "-1d" + +#currently the only possible value +evaluation = "AGGREGATE" + +#Target and warning percentage of the SLO as double +target = 98 #if not set(removed) it's defaulted to 98 +warning = 99 #if not set(removed) it's defaulted to 99 + +} \ No newline at end of file