From d01b9ed8fdceeec76b05ad475dc9a571972038cd Mon Sep 17 00:00:00 2001 From: Mohammed Abadel Date: Wed, 15 Jun 2022 11:47:52 +0200 Subject: [PATCH] SLO for CD Store Mobile (all Hubs) + Vehicle (CN) --- ...tore_Mobile_Reliability_of_key_requests.tf | 51 +++++++++++++++ ...ore_Vehicle_Reliability_of_key_requests.tf | 65 +++++++++++++++++++ ...tore_Mobile_Reliability_of_key_requests.tf | 51 +++++++++++++++ ...tore_Mobile_Reliability_of_key_requests.tf | 51 +++++++++++++++ 4 files changed, 218 insertions(+) create mode 100644 CN_PROD/slo/Wirkkette_Connected_Drive_Store_Mobile_Reliability_of_key_requests.tf create mode 100644 CN_PROD/slo/Wirkkette_Connected_Drive_Store_Vehicle_Reliability_of_key_requests.tf create mode 100644 EMEA_PROD/slo/Wirkkette_Connected_Drive_Store_Mobile_Reliability_of_key_requests.tf create mode 100644 NA_PROD/slo/Wirkkette_Connected_Drive_Store_Mobile_Reliability_of_key_requests.tf diff --git a/CN_PROD/slo/Wirkkette_Connected_Drive_Store_Mobile_Reliability_of_key_requests.tf b/CN_PROD/slo/Wirkkette_Connected_Drive_Store_Mobile_Reliability_of_key_requests.tf new file mode 100644 index 0000000..e8f0bed --- /dev/null +++ b/CN_PROD/slo/Wirkkette_Connected_Drive_Store_Mobile_Reliability_of_key_requests.tf @@ -0,0 +1,51 @@ +module Wirkkette_Connected_Drive_Store_Mobile_Reliability_of_key_requests { + + source = "../../_dynatrace-base-modules/dynatrace-service-level-objective" + + + name = "Wirkkette \"CD Store Mobile\" - Reliability of key requests" + + description = "CoCo-QM-Report_Draft" + + + + #entity selector object + filter = "" + + #metric expression of the calculation as done in data explorer ui + metric_expression = <<-EOT +(100)*((builtin:service.keyRequest.errors.server.successCount:filter(and(or(in("dt.entity.service_method",entitySelector("type(service_method), + fromRelationship.isServiceMethodOfService( + type(~"SERVICE~"),entityName.in( + ~"StoreOfferResourceV6 - am-store - prod~", + ~"StoreResourceV4 - am-store - prod~" + ) + ) + ,entityName.in( + ~"getOffersAndPortfolio~" + )"))))):splitBy()) + / + (builtin:service.keyRequest.count.server:filter(and(or(in("dt.entity.service_method",entitySelector("type(service_method), + fromRelationship.isServiceMethodOfService( + type(~"SERVICE~"),entityName.in( + ~"StoreOfferResourceV6 - am-store - prod~", + ~"StoreResourceV4 - am-store - prod~" + ) + ) + ,entityName.in( + ~"getOffersAndPortfolio~" + )"))))):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/CN_PROD/slo/Wirkkette_Connected_Drive_Store_Vehicle_Reliability_of_key_requests.tf b/CN_PROD/slo/Wirkkette_Connected_Drive_Store_Vehicle_Reliability_of_key_requests.tf new file mode 100644 index 0000000..1f91fc9 --- /dev/null +++ b/CN_PROD/slo/Wirkkette_Connected_Drive_Store_Vehicle_Reliability_of_key_requests.tf @@ -0,0 +1,65 @@ +module Wirkkette_Connected_Drive_Store_Vehicle_Reliability_of_key_requests { + + source = "../../_dynatrace-base-modules/dynatrace-service-level-objective" + + + name = "Wirkkette \"CD Store Vehicle\" - Reliability of key requests" + + description = "CoCo-QM-Report_Draft" + + + + #entity selector object + filter = "" + + #metric expression of the calculation as done in data explorer ui + metric_expression = <<-EOT +(100)*((builtin:service.keyRequest.errors.server.successCount:filter(and(or(in("dt.entity.service_method",entitySelector("type(service_method), + fromRelationship.isServiceMethodOfService( + type(~"SERVICE~"),entityName.in( + ~"StoreOfferResourceV6 - am-store - prod~", + ~"StoreResourceV4 - am-store - prod~", + ~"CdStoreOfferResource - am-store - prod~", + ~"StoreSubmitResourceV6 - am-store - prod~" + ) + ) + ,entityName.in( + ~"retrieveOffer~", + ~"getOffersAndPortfolio~", + ~"getMarketOffers~", + ~"getOffersAndPortfolio~", + ~"bookedAndBookableCDServices~", + ~"submitOrderV6~" + )"))))):splitBy()) + / + (builtin:service.keyRequest.count.server:filter(and(or(in("dt.entity.service_method",entitySelector("type(service_method), + fromRelationship.isServiceMethodOfService( + type(~"SERVICE~"),entityName.in( + ~"StoreOfferResourceV6 - am-store - prod~", + ~"StoreResourceV4 - am-store - prod~", + ~"CdStoreOfferResource - am-store - prod~", + ~"StoreSubmitResourceV6 - am-store - prod~" + ) + ) + ,entityName.in( + ~"retrieveOffer~", + ~"getOffersAndPortfolio~", + ~"getMarketOffers~", + ~"getOffersAndPortfolio~", + ~"bookedAndBookableCDServices~", + ~"submitOrderV6~" + )"))))):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/Wirkkette_Connected_Drive_Store_Mobile_Reliability_of_key_requests.tf b/EMEA_PROD/slo/Wirkkette_Connected_Drive_Store_Mobile_Reliability_of_key_requests.tf new file mode 100644 index 0000000..e8f0bed --- /dev/null +++ b/EMEA_PROD/slo/Wirkkette_Connected_Drive_Store_Mobile_Reliability_of_key_requests.tf @@ -0,0 +1,51 @@ +module Wirkkette_Connected_Drive_Store_Mobile_Reliability_of_key_requests { + + source = "../../_dynatrace-base-modules/dynatrace-service-level-objective" + + + name = "Wirkkette \"CD Store Mobile\" - Reliability of key requests" + + description = "CoCo-QM-Report_Draft" + + + + #entity selector object + filter = "" + + #metric expression of the calculation as done in data explorer ui + metric_expression = <<-EOT +(100)*((builtin:service.keyRequest.errors.server.successCount:filter(and(or(in("dt.entity.service_method",entitySelector("type(service_method), + fromRelationship.isServiceMethodOfService( + type(~"SERVICE~"),entityName.in( + ~"StoreOfferResourceV6 - am-store - prod~", + ~"StoreResourceV4 - am-store - prod~" + ) + ) + ,entityName.in( + ~"getOffersAndPortfolio~" + )"))))):splitBy()) + / + (builtin:service.keyRequest.count.server:filter(and(or(in("dt.entity.service_method",entitySelector("type(service_method), + fromRelationship.isServiceMethodOfService( + type(~"SERVICE~"),entityName.in( + ~"StoreOfferResourceV6 - am-store - prod~", + ~"StoreResourceV4 - am-store - prod~" + ) + ) + ,entityName.in( + ~"getOffersAndPortfolio~" + )"))))):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/NA_PROD/slo/Wirkkette_Connected_Drive_Store_Mobile_Reliability_of_key_requests.tf b/NA_PROD/slo/Wirkkette_Connected_Drive_Store_Mobile_Reliability_of_key_requests.tf new file mode 100644 index 0000000..e8f0bed --- /dev/null +++ b/NA_PROD/slo/Wirkkette_Connected_Drive_Store_Mobile_Reliability_of_key_requests.tf @@ -0,0 +1,51 @@ +module Wirkkette_Connected_Drive_Store_Mobile_Reliability_of_key_requests { + + source = "../../_dynatrace-base-modules/dynatrace-service-level-objective" + + + name = "Wirkkette \"CD Store Mobile\" - Reliability of key requests" + + description = "CoCo-QM-Report_Draft" + + + + #entity selector object + filter = "" + + #metric expression of the calculation as done in data explorer ui + metric_expression = <<-EOT +(100)*((builtin:service.keyRequest.errors.server.successCount:filter(and(or(in("dt.entity.service_method",entitySelector("type(service_method), + fromRelationship.isServiceMethodOfService( + type(~"SERVICE~"),entityName.in( + ~"StoreOfferResourceV6 - am-store - prod~", + ~"StoreResourceV4 - am-store - prod~" + ) + ) + ,entityName.in( + ~"getOffersAndPortfolio~" + )"))))):splitBy()) + / + (builtin:service.keyRequest.count.server:filter(and(or(in("dt.entity.service_method",entitySelector("type(service_method), + fromRelationship.isServiceMethodOfService( + type(~"SERVICE~"),entityName.in( + ~"StoreOfferResourceV6 - am-store - prod~", + ~"StoreResourceV4 - am-store - prod~" + ) + ) + ,entityName.in( + ~"getOffersAndPortfolio~" + )"))))):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